私は2つのオブジェクトを持つプロジェクトで働いています。1 つは (Transform.position) で位置を編集して移動し、もう 1 つは 1 つ目にスプリング ジョイントを取り付けたものです。
アイデアは、2 番目のオブジェクトが最初のオブジェクトに追従するということですが、動きが小さすぎると、2 番目のオブジェクトの色が変わります。
何か案が?
あなたが何を望んでいるのか理解できれば、最初のオブジェクトの速度に対するそのオブジェクトの速度に応じて、2 番目のオブジェクトの色を変更する必要があります。
したがって、ループの特定のポイント (FixedUpdate
おそらくメソッド) で、速度間の差の大きさを測定します。
var diff = (gameObject1.rigidbody.velocity - gameObject2.rigidbody.velocity).magnitude;
(またはパフォーマンスのためのユーザー sqrMagnitude)
その後、速度に差がなく、大きな差がdiff
ある間隔内になるように正規化し、それを色で乗算する必要があります。[0;1]
0
1