Motor6D
Motor6D joins two BaseParts (Part0 and Part1) together in an animatable way. The Transform property determines the offset between these parts. This can be set manually using RunService.PreSimulation or through an Animator.
Models whose parts are joined by Motor6D are usually referred to as rigs, typically for Humanoids.
Summary
Properties
Describes the current animation offset of the Motor6D joint.
Displays the current rotation of the motor in radians.
The desired angle to turn the motor to in radians.
The maximum velocity the motor can use to reach Motor.DesiredAngle measured in radians per physics frame (1/60th of a second).
Determines if the joint is currently active in the world.
Determines how the offset point is attached to JointInstance.Part0.
Is subtracted from the JointInstance.C0 property to create an offset point for JointInstance.Part1.
Sets whether the joint is active or not.
The first BasePart that the joint connects.
The second BasePart that the joint connects.
Properties
ChildName
ParentName
Transform
The internal CFrame that is manipulated when a Motor6D is being animated. It is recommended to use this property for custom animations rather than JointInstance.C0 and JointInstance.C1.
Timing
Motor6D transforms are not applied immediately, unlike updating C0 and C1, but rather as a batch in a parallel job after RunService.PreSimulation, immediately before physics steps. The deferred batch update is much more efficient than many immediate updates.
If the Motor6D is part of an animated model with an Animator, then Motor6D.Transform will usually be overwritten every frame by the Animator after RunService.PreAnimation and before RunService.PreSimulation.