Version: 2023.1
Hinge Joint 2D
Slider Joint 2D

Relative Joint 2D

The Relative Joint 2D connects two GameObjects controlled by Rigidbody physics to maintain in a position based on each other’s location. Use this joint to keep two objects offset from each other, at a position and angle you decide.

Refer to Comparing Fixed and Relative joints 2D for the differences between Relative Joint2D and FixedJoint2D.

属性 功能
Enable Collision Enable this property to enable collisions between the two connected GameObjects.
Connected Rigid Body Specify the other object this joint connects to. Leave this as None to have the other end of the joint fixed at a point in space defined by the Connected Anchor property. Select the circle icon to the right to view a list of GameObjects to connect to.
Max Force Set the linear (or straight line) movement between joined GameObjects. A high value (up to 1,000) uses high force to maintain the offset.
Max Torque Set the angular (or rotation) movement between joined GameObjects. A high value (up to 1000) uses high force to maintain the offset.
Correction Scale Tweak the joint to correct its behaviorif required. Increasing the Max Force or Max Torque may affect the joint’s behavior such that the joint doesn’t reach its target, requiring you to correct it by adjusting this setting. The default setting is 0.3.
Auto Configure Offset Enable this property to automatically set and maintain the distance and angle between the connected objects. You do not need to manually enter the Linear Offset and Angular Offset when you enable this property.
Linear Offset Enter local space coordinates to specify and maintain the distance between the connected objects.
Angular Offset Enter local space coordinates to specify and maintain the angle between the connected objects.
Break Action Set the action taken when either the force or torque threshold is exceeded.
Break Force Set the force threshold which if exceeded, will cause the joint to perform the selected Break Action. The default value is set to Infinity, which can never be exceeded and therefore the Break Action can never be taken while the threshold remains at this value.
Break Torque Set the torque threshold which if exceeded, will cause the joint to perform the selected Break Action. The default value is set to Infinity, which can never be exceeded and therefore the Break Action can never be taken while the threshold remains at this value.

Using this joint

The aim of this joint is to maintain a relative linear and angular distance (offset) between two points. Those two points can be two Rigidbody2D components or a Rigidbody2D component and a fixed position in the world. Note: Connect to a fixed position in the world by setting Connected Rigidbody to None.

The joint applies a linear and angular (torque) force to both connected Rigidbody objects. It uses a simulated motor that is preconfigured to be quite powerful: It has a high Max Force and Max Torque limit. You can lower these values to make the motor less powerful motor or turn-off it off completely.

此关节同时有两个约束:

  • Maintain the specified linear offset between the two Rigidbody objects.
  • Maintain the starting angular offset between the two Rigidbody objects.

使用此关节可以构建具有以下要求的物理对象:

  • 彼此保持一定距离,就像这些对象无法彼此远离或靠近一样。(可设定这些对象彼此分开的距离。此距离可实时改变。)
  • 仅以特定角度相对于彼此旋转。(可设定该角度。)

在有些使用场合下可能需要灵活的连接,例如在空间射击游戏中,玩家身后有额外的排炮。这种情况下可以使用相对关节,使排炮在玩家身后稍微滞后,但让排炮随玩家一起旋转时没有滞后。

Some uses may need a configurable force, such as: A game where the camera follows a player using a configurable force to keep track.

Comparing Fixed and Relative joints 2D

FixedJoint2D is spring type joint. RelativeJoint2D is a motor type joint with a maximum force and/or torque.

固定关节使用弹簧来保持相对线性偏移和角度偏移,而相对关节则使用电机。可配置关节的弹簧或电机。 The Fixed joint works with anchor points (it’s derived from script AnchoredJoint2D): It maintains the relative linear and angular offset between the anchors. The Relative joint doesn’t have anchor points (it’s derived directly from script Joint2D). * 相对关节可以实时修改相对的线性偏移和角度偏移:固定关节则不能进行此类修改。

其他资源

  • Refer to Joints 2D for more information about other 2D Joints.

RelativeJoint2D

Hinge Joint 2D
Slider Joint 2D