rojo/.cursor/rules/roblox/en-us/physics/constraints/hinge.md
2026-02-02 14:05:11 -06:00

2.9 KiB

title description
Hinge HingeConstraint allows its two attachments to rotate about one axis, with optional assigned power for motor or servo behavior.
For an overview on creating, visualizing, and simulating mechanical constraints, including `Class.HingeConstraint`, see [Mechanical constraints](../../physics/mechanical-constraints.md). Also see [Roblox units](../../physics/units.md) to understand how Roblox units compare to metric units.

A Class.HingeConstraint allows its two attachments to rotate about one axis, forcing them into the same position and X axis alignment. This constraint can also be powered to behave like a motor or servo, and you can set limits to restrict the hinge's rotational range.

Orientation of a hinge's attachments affects how it rotates. To ensure rotation occurs around the desired axis, each attachment's `Class.Attachment.Axis|Axis`, visualized by the yellow arrow, should point in the same direction.

Angular power

If a hinge's Class.HingeConstraint.ActuatorType|ActuatorType is set to Enum.ActuatorType|Motor, it attempts to rotate the attachments with the goal of reaching its Class.HingeConstraint.AngularVelocity|AngularVelocity. You can further control this rotation through both Class.HingeConstraint.MotorMaxAcceleration|MotorMaxAcceleration and Class.HingeConstraint.MotorMaxTorque|MotorMaxTorque.

If a hinge's Class.HingeConstraint.ActuatorType|ActuatorType is set to Enum.ActuatorType|Servo, it attempts to rotate to an angle specified by Class.HingeConstraint.TargetAngle|TargetAngle. This rotation is controlled by both Class.HingeConstraint.AngularSpeed|AngularSpeed and Class.HingeConstraint.ServoMaxTorque|ServoMaxTorque.

ActuatorType = **Motor**
ActuatorType = **Servo**

Limits

You can set limits to restrict the rotation of a hinge, useful for mechanisms like doors which should only swing open or closed within a set range. Enabling the Class.HingeConstraint.LimitsEnabled|LimitsEnabled property exposes the Class.HingeConstraint.LowerAngle|LowerAngle and Class.HingeConstraint.UpperAngle|UpperAngle limits, as well as Class.HingeConstraint.Restitution|Restitution which defines the elasticity of the attachments when they reach either limit.