本文主要是介绍Unity3D-----物理引擎(ADV--COMPONENT,关节属性查询),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
关节
- 关节类型
- 1、 铰链关节(Hinge Joint)
- 2、 固定关节
- 3、弹性关节(Spring Joint)
- 4、角色关节(2020年5月21日暂未了解)
- 5、可配置关节(2020年5月21日暂未了解)
- 6、给刚体添加力
关节类型
1、 铰链关节(Hinge Joint)
- 铰链关节将两个刚体(Rigidbody)组合在一起,从而将其约束为如同通过铰链链接一样进行移动。它十分适合门,也可用于对链条、钟摆等进行模拟效果。
- 铰链关节组件属性:
- 连接体 (Connected Body): 对关节 (Joint) 所依赖的刚体 (Rigidbody)
的可选引用。如果未设置,则关节 (Joint) 连接到世界坐标。 - 锚点 (Anchor): 主体围绕其摇摆的轴的位置。
- 轴 (Axis): 主体围绕其摇摆的轴的方向。
- 使用弹簧 (Use Spring):启用使用弹簧 属性。
- 弹簧 (Spring): 对象为移动到位所施加的力。
- 目标位置 (Target Position):使刚体 (Rigidbody) 相对于其连接体达到特定角度。
- 阻尼 (Damper): 此值越高,对象减慢的幅度越大。
- 使用电机 (Use Motor): 启用使用电机 (Use Motor) 时使用的电机 (Motor) 的属性。
- 目标速率 (Target Velocity): 对象尝试达到的速度。
- 力 (Force): 为达到该速度而应用的力。
- 自由旋转 (Free Spin): 如果启用,则电机从不用于对旋转制动,仅进行加速。
- 使用限制 (Use Limits):如果启用,则铰链角度会限制在最小 (Min) 和最大 (Max) 值内。
- 限制 (Limits): 启用使用限制 (Use Limits) 时使用的限制 (Limits) 的属性。
- 最小 (Min): 旋转可以达到的最小角度。
- 最大(Max):旋转可以达到的最大角度。 • 最小反弹 (Min Bounce): 对象在命中最小停止时反弹的量。
- 最大反弹 (Max Bounce): 对象在命中最大停止时反弹的量。
- 折断力 (Break Force): 为使此关节 (Joint)折断而需要应用的力。
- 折断扭矩 (Break Torque): 为使此关节 (Joint) 折断而需要应用的扭矩
- 启动碰撞Enable Collision : 如果启用,将启用与绑定物体之间的碰撞效果
2、 固定关节
- 固定关节将对象移动限制为依赖于其他对象。这在某种程度上类似于父子化 ,不过是通过物理而不是变换层级结构来实现。使用它们的最佳情况是在具有要方便地相互分离的对象,或是连接两个对象的移动而不进行父子化时。
- 连接体 (Connected Body): 对关节 (Joint) 所依赖的刚体 (Rigidbody)
的可选引用。如果未设置,则关节 (Joint) 连接到世界坐标。 - 折断力 (Break Force): 为使此关节 (Joint) 折断而需要应用的力
。 - 折断扭矩 (Break Torque): 为使此关节 (Joint) 折断而需要应用的扭矩
。 - 启动碰撞Enable Collision: 如果启用,将启用与绑定物体之间的碰撞
效果。
3、弹性关节(Spring Joint)
- 弹簧关节 将两个刚体 (Rigidbody) 组合在一起,从而将其约束为如同通过弹簧连接一样进行移动效果。
- 连接体 (Connected Body):对关节所依赖的刚体 (Rigidbody) 的可选引用
。 - 锚点 (Anchor): 对象局部坐标空间中定义关节中心的位置(静止时)。这不是将对象拉向的位置。
- 弹簧 (Spring): 弹簧的强度。
- 阻尼 (Damper): 弹簧在处于活动状态时缩减的量。 最小距离 (Min Distance): 大于此值的距离不会使弹簧激活。
- 最大距离 (Max Distance): 小于此值的距离不会使弹簧激活。
- 折断力 (Break Force):为使此关节折断而需要应用的力。
- 折断扭矩 (Break Torque): 为使此关节 折断而需要应用的扭矩。 启动碰撞Enable Collision : 如果启用,将启用与绑定物体之间的碰撞效果
4、角色关节(2020年5月21日暂未了解)
5、可配置关节(2020年5月21日暂未了解)
6、给刚体添加力
- 可用于断开关节等
//世界坐标前方(Z轴)方向添加一个500的力。
rigidbody.AddForce(Vector3.forward*500);
//自己的坐标前方(Z轴)方向添加一个500的力。rigidbody.AddForce(transform.forward*500);
这篇关于Unity3D-----物理引擎(ADV--COMPONENT,关节属性查询)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!