该关节组件允许由刚体物理组件控制的两个游戏对象基于彼此的位置来保持相对位置。使用此关节可按照您所决定的位置和角度保持两个对象之间的相互偏移。
请参阅下文的详细信息进一步了解 RelativeJoint2D 和 FixedJoint2D 之间的区别。
属性: | 功能: | |
---|---|---|
Enable Collision | 连接的两个对象能否相互碰撞?选中此复选框表示“能”。 | |
Connected Rigid Body | 在此处指定该关节连接到的另一个对象。如果将此属性保留为 None__,则该关节的另一端将固定在空间中的某个点。选择字段右侧的圆圈可查看要连接到的对象的列表。| |Max Force__ | 设置连接对象之间的线性(直线)偏移;较高的值(最大值为 1,000)表示使用较大力来保持此偏移。 |
Max Torque | 设置连接对象之间的角度(旋转)移动;较高的值(最大值为 1,000)表示使用较大力来保持此偏移。 | |
Correction Scale | 调整关节来确保其行为符合要求。(增加 Max Force 或 Max Torque 可能会影响行为,使关节无法到达目标,这种情况下请使用此设置来进行更正。)默认设置 (0.3) 通常比较合适,但也可能需要在 0 和 1 之间进行调整。 | |
Auto Configure Offset | 选中此框可以自动设置和维持连接对象之间的距离和角度。(选择此选项意味着无需手动输入 Linear Offset 和 Angular Offset。) | |
Linear Offset | 输入局部空间坐标来指定和维持连接对象之间的距离。 | |
Angular Offset | 输入局部空间坐标来指定和维持连接对象之间的角度。 | |
Break Force | 指定破坏并进而删除关节所需的作用力水平。Infinity 表示关节牢不可破。 | |
Break Torque | 指定破坏并进而删除关节所需的扭矩水平。Infinity 表示关节牢不可破。 |
(另请参阅 2D 关节中的详情和提示以了解所有 2D 关节的有用背景信息。)
此关节的目的是保持两点之间的相对线性距离和角度距离(偏移)。这两个点可以是两个 2D 刚体__组件,或一个 2D 刚体__组件和世界中的一个固定位置。(将 Connected Rigidbody 设置为 None,即可连接到世界中的固定位置)。
此关节对两个连接刚体对象施加线性力和角力(扭力)。此关节使用的模拟电机已预配置十分强大的功率,因此具有很高的 Max Force 和 Max Torque 限值。可通过降低这些值来降低电机功率,或将电机完全关闭。
此关节同时有两个约束:
例如:
使用此关节可以构建具有以下要求的物理对象:
在有些使用场合下可能需要灵活的连接,例如在空间射击游戏中,玩家身后有额外的排炮。这种情况下可以使用相对关节,使排炮在玩家身后稍微滞后,但让排炮随玩家一起旋转时没有滞后。
在有些使用场合下可能需要可配置的力,例如在游戏中使用可配置的力让摄像机追踪玩家。
FixedJoint2D 是一种弹簧式关节。RelativeJoint2D 是具有最大力和/或扭矩的电机型关节。
固定关节使用弹簧来保持相对线性偏移和角度偏移,而相对关节则使用电机。可配置关节的弹簧或电机。 固定关节使用锚点(此关节派生自脚本 AnchoredJoint2D__):在锚点之间保持相对的线性偏移和角度偏移。相对关节没有锚点(此关节直接派生自脚本 Joint2D__)。 * 相对关节可以实时修改相对的线性偏移和角度偏移:固定关节则不能进行此类修改。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.