前言
在Unity
中可以使用Joint
(关节)来实现绳子的效果。
Joint
属于Unity
里面的一种物理组件,是模拟物体与物体之间的一种连接关系,有以下几种类型:Hinge Joint
(链条连接),Fixed Joint
(固定连接),spring Joint
(弹簧连接),character Joint
(关节连接),configurable Joint
(万能连接)。
Hinge Joint
:铰链关节,使两个刚体连接起来,让他们像铰链一样运动,通常门,钟摆等事物用到铰链关节。
Fixed Joint
:固定连接,就相当于两个物体之间用棍棒连接着一样。与Hinge Joint
不同就是在一定距离内都会有作用力。
spring Joint
:弹簧连接,就相当于两个物体间用弹簧连接一样。不管两个物体大于或者小于某固定的距离,都会产生相互作用的力。而且伴有弹性系数等。
character Joint
::角色关节连接,模拟人物骨头关节的连接,连接的两个物体可以通过设置关节点而做相对旋转、
configurable Joint
:其实就是自由连接。通过各种设置来调节连接方式。
GitHub工程地址
下面这个工程,不使用上面讲的Join
组件,通过物理公式简单实现模拟绳子的效果。
原理
胡克定律:F = k * (L - L0)
其中k是弹簧系数,L是当前弹簧的长度,L0是弹簧不受力时的长度(初始长度)