LandingGear
component takes care of steering, brakes, rigging and animation.
WheelCollider
s for each landing gear wheel as per Unity's guide.WheelCollider
to the WheelCollider
field. Assign the wheel transform (model representing the wheel) to the Wheel
field.Position
of the wheel (front, left, right, etc.)Steer Angle
if the wheel is steerable. Leave at 0 if not.For rigging to work properly a specific setup model setup is required with the following hierarchy:
Assign the upper and lower suspension arm to the Uper Suspension Arm
and Lower Suspension Arm
fields.
The SuspensionArmLower should have rotation such that it's local Z axis points towards the pivot point of the SuspensionArmUpper:
Objects that move and steer with the wheel such as fairing can be added to the Static Transform
field.
Landing gear that can extend/retract can use animation to achieve this. I will not be going over the steps to set up the animation as this is a standard Unity process and is explained quite well in the official tutorial here.
The default state for animation is extended landing gear. The default animation (going forward) is extended ⇒ retracted. Extending the landing gear is simply the retracting animation played in reverse.
Retractable
to indicate that the landing gear of the aircraft can retract.IsExtended
if the initial state is extended landing gear.AnimationController
.Animator
to the object LandingGear
is attached to and assign the AnimationController
to the Controller
field.Direction
parameter to AnimationController
and set the value to 1.AnimationController
with RetractLandingGear
state:RetractLandingGear
state speed to 1 and add a parameter Multiplier
Direction
that was created previously.Animation
and animate the landing gear as wanted. Initial state should be extended, final state should be retracted.Animation
to the previously created AnimationController
.Animator
to the Animator
field.