Version: 2022.3
Spring Joint 2D
2D 车轮关节 (Wheel Joint 2D)

Target Joint 2D

This joint connects to a specified target, rather than another Rigidbody object as other joints do. This behaves in a similar way to a spring type joint.

属性 功能
Anchor Define where (in terms of x, y-coordinates on the Rigidbody 2D) the end point of the joint connects to this GameObject.
Target Define where (in terms of x, y-coordinates in world space) the other end of the joint attempts to move.
Auto Configure Target Enable this property to automatically set the other end of the joint to the current position of the GameObject. Note: When this option is enabled, the target changes as you move the GameObject but the target will not change if the option is not enabled.
Max Force Set the force that the joint can apply when attempting to move the object to the target position. The higher the value, the higher the maximum force.
Damping Ratio Set the degree to suppress spring oscillation. In the range 0 to 1, the higher the value, the less movement.
Frequency Set the frequency at which the spring oscillates while the GameObjects are approaching the separation distance you want (measured in cycles per second). In the range 0 to 1,000,000 - the higher the value, the stiffer the spring. Note: Setting Frequency to zero will create the stiffest spring type joint possible.
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.

Using this joint

Use this joint to connect a Rigidbody GameObject to a point in space. The aim of this joint is to keep zero linear distance between two points: An anchor point on a Rigidbody object and a world space position, called the “Target”. The joint applies linear force to the Rigidbody object, it does not apply torque (angular force).

The joint uses a simulated spring. You can set the spring’s stiffness and movement by adjusting its settings. For example, to set a stiff and barely moving spring:

  • Set a high (1,000,000 is the highest) Frequency == a stiff spring.

  • Set a high (1 is the highest) Damping Ratio == a barely moving spring.

To simulate a looser and more freely moving spring, you would use the following settings:

  • Set a low Frequency == a loose spring.

  • Set a low Damping Ratio == a moving spring.

When the spring applies its force between the Rigidbody object and target, it tends to overshoot the distance you have set between them, and then rebound repeatedly, giving in a continuous oscillation. The Damping Ratio sets how quickly the Rigidbody object stops moving. The Frequency sets how quickly the Rigidbody object oscillates either side of the distance you have specified.

此关节有一个约束:

  • Maintain a zero linear distance between the anchor point on a Rigidbody object and a world space position (Target).

You can use this joint to construct physical objects that need to move to designated target positions and stay there until another target position is selected or the target is cleared. For example:

  • 玩家在游戏中通过鼠标单击操作来拾取蛋糕并将其拖入盘子。使用此关节可以将每个蛋糕移动到盘子上。

还可以使用关节来允许对象悬挂:如果锚点不是质心,则对象会旋转。例如:

  • 玩家在游戏中拾取盒子。如果玩家使用鼠标单击操作从一个盒子的角拾取并拖动该盒子,则该盒子将在光标处悬挂。

其他资源

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

TargetJoint2D

Spring Joint 2D
2D 车轮关节 (Wheel Joint 2D)