如何通过关节移动刚体的速度?

时间:2012-10-03 17:11:57

标签: c# unity3d

我在一个项目中工作,我有2个对象。 通过使用(Transform.position)编辑位置来移动一个 另一个与第一个相连的弹簧接头。

这个想法是第二个对象将跟随第一个但是如果移动是微小的,第二个对象将改变他的颜色。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

如果我理解了你想要的东西,你想根据该物体的速度改变第二个物体的颜色第一个物体的速度。

因此,在循环中的某个点(可能是FixedUpdate方法),您将测量速度之间差异的大小:

var diff = (gameObject1.rigidbody.velocity - gameObject2.rigidbody.velocity).magnitude;

(或用户性能sqrMagnitude)

之后你可能只需要将diff标准化为[0;1]区间0,其中1的速度没有差异,{{1}}是一个巨大的差异,然后乘以颜色。