LandingGear component takes care of steering, brakes, rigging and animation.
WheelColliders 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.