Version: 2022.2
Constraints of 2D joints
Fixed Joint 2D

Distance Joint 2D

The Distance Joint 2D is a 2D joint that attaches two GameObjects controlled by Rigidbody 2D physics, and keeps them a certain distance apart.

属性 功能
Enable Collision Enable this property to enable collisions between the two connected GameObjects.
Connected Rigidbody 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.
Auto Configure Connected Anchor Enable this property to automatically set the anchor location for the other object this joint connects to. You do not need to enter coordinates for the Connected Anchor property if you enable this property.
Anchor Define where (in terms of x, y-coordinates on the Rigidbody 2D) the end point of the joint connects to this GameObject.
Connected Anchor Define where (in terms of x, y-coordinates on the Rigidbody 2D) the end point of the joint connects to the other GameObject.
Auto Configure Distance Enable this to automatically detect the current distance between the two GameObjects, and set it as the distance that the Distance Joint 2D keeps between the two GameObjects. When enabled, you do not need to specify the distance between the GameObjects at Distance.
Distance 指定 2D 距离关节在两个游戏对象之间保持的距离。
Max Distance Only Enable this to only enforce a maximum distance. This allows connected GameObjects to move closer to each other, but not further than the distance set by Distance. Clear this to keep the distance between the GameObjects fixed.
Break Action Set the action taken when either a 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.

Using this joint

The main application of the Distance Joint 2D component is to keep distance between two points. These two points can be two Rigidbody 2D components or a Rigidbody 2D component and a fixed position in the world. Tip: To connect a Rigidbody 2D component to a fixed position in the world, set the Connected Rigidbody field to None.

This Joint 2D does not apply torque or rotation. It does apply a linear force to both connected items, using a very stiff simulated ‘spring’ to maintain the distance. You cannot configure the properties of this ‘spring’.

此 2D 关节具有可选的约束:

  • Constraint A: Maintains a fixed distance between two anchor points on two bodies (when Max Distance Only is unchecked).
  • Constraint B: Maintains maximum distance only between two anchor points on two bodies (when Max Distance Only is checked).

使用此 2D 关节构建的物理对象就好像是通过可旋转的刚性连接方式相连一样。

  • Using Constraint A (Max Distance Only unchecked), you can create a fixed length connection, such as two wheels on a bicycle.
  • Using Constraint B (Max Distance Only checked), you can create a constrained but unfixed length connection, which allows flexible movement such as a yo-yo moving towards and away from a fixed point.

其他资源

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

DistanceJoint2D

Constraints of 2D joints
Fixed Joint 2D