AlignOrientation
The AlignOrientation constraint applies torque to align two attachments, or to align one attachment with a goal orientation. As indicated by the name, it only affects the orientation of the attachments, not their position (to align attachments positionally, see AlignPosition).
Torque created by AlignOrientation is applied about the center of mass of the parent of the attachments, or the center of mass of parts rigidly connected to the parents.
See Mover Constraints for more details and video demonstrations of this and other mover constraints.
Affected Axes
The axes affected by torque are controlled through the constraint's PrimaryAxisOnly property. If false (default), the constraint will apply torque about all 3 axes to achieve alignment. If true, torque will only occur when the primary axes become misaligned.
Reactionary Torque
By default, the constraint only applies torque to Attachment0 while Attachment1 remains unaffected. If desired, torque can be applied to both attachments in equal and opposite directions by enabling ReactionTorqueEnabled.
Torque Magnitude
You can configure this constraint to apply the maximum torque that constraints allow through the RigidityEnabled property. When true, the physics solver reacts as quickly as possible to complete the alignment. When false, the torque is determined by MaxTorque, MaxAngularVelocity, and Responsiveness.
Attachment Mode
This constraint can use either one or two attachments in calculating its goal. See Mode for details.
Summary
Properties
The CFrame orientation with which the constraint will attempt to match the orientation of Attachment0.
Maximum angular velocity the constraint can use to reach its goal.
Whether the constraint uses one or two attachments in calculating its goal.
The direction of the goal's X axis, represented as a unit Vector3.
Determines how the constraint's axes are affected by torque.
Whether the constraint applies torque only to Attachment0, or to both attachments in equal and opposite directions.
Controls how quickly the constraint reaches its goal. Higher values cause the attachment(s) to align more rapidly.
Whether torque is dependent on other properties, or if the physics solver reacts as quickly as possible to complete the alignment.
The direction of the goal's Y axis, represented as a unit Vector3.
Methods
Events
Properties
AlignType
Specifies the desired relationship between the primary axes of Attachment0 and the goal. Options are either Parallel or Perpendicular and the constraint will attempt to maintain the specified relationship by applying forces within two parallel or perpendicular axes, respectively. Only meaningful if PrimaryAxisOnly is true.
CFrame
The CFrame orientation (translation component ignored) with which the constraint will attempt to match the orientation of Attachment0. Only used when Mode is set to OneAttachment.
MaxAngularVelocity
Maximum angular velocity the constraint can use to reach its goal. Only used if RigidityEnabled is false.
Note that MaxAngularVelocity, as well as MaxTorque, are caps to the angular velocity and torque respectively. The actual scale is determined by Responsiveness.
MaxTorque
Maximum torque the constraint can use to reach its goal. Only used if RigidityEnabled is false.
Note that MaxTorque, as well as MaxAngularVelocity, are caps to the torque and angular velocity respectively. The actual scale is determined by Responsiveness.
Whether the constraint uses one or two attachments in calculating its goal. By default, this is TwoAttachment, meaning that the constraint attempts to match the orientation of Attachment0 with the orientation of Attachment1, disregarding CFrame, PrimaryAxis, and SecondaryAxis.
If set to OneAttachment, the constraint disregards Attachment1 and attempts to match the orientation of Attachment0 with the orientation of CFrame, or match the attachment's Axis and SecondaryAxis with the constraint's PrimaryAxis and SecondaryAxis properties respectively.
PrimaryAxis
The direction of the goal's X axis, represented as a unit Vector3. Only used when Mode is OneAttachment.
PrimaryAxisOnly
Determines how the constraint's axes are affected by torque. If false (default), the constraint will apply torque about all 3 axes to achieve alignment. If true, torque will only occur when the primary axes become misaligned.
Enabling PrimaryAxisOnly also enables the AlignType property.
ReactionTorqueEnabled
If false (default), the constraint only applies torque to Attachment0 while Attachment1 remains unaffected. If true, the constraint applies torque to both attachments in equal and opposite directions.
Responsiveness
Controls how quickly the constraint reaches its goal. Higher values cause the attachment(s) to align more rapidly. Value can be between 5 and 200.
RigidityEnabled
Whether torque is dependent on other properties, or if the physics solver reacts as quickly as possible to complete the alignment. If false (default), the torque is determined by MaxTorque, MaxAngularVelocity, and Responsiveness. If true, the physics solver reacts as quickly as possible to complete the alignment.
SecondaryAxis
The direction of the goal's Y axis, represented as a unit Vector3. Only used when Mode is OneAttachment.