寒くなりましたね、唇が切れてイタイイタイのえんちゃなのであった
今回は、オブジェクトとオブジェクトの結合を解説しようと思います。
SASUKEチックなステージを作りたくて、ハンマーを作ろうとしたときに、この問題にぶち当たりました。
まずこのハンマーですが
トーラスと円柱2つでできています。
上からトーラス、円柱1、円柱2とします。
やりたいことは円柱2を円柱1に固定、円柱1をトーラスに固定、トーラスを空中に固定する(回転は出来る)。の3つです。
全部に AddComponent > Physics > Rigid body を追加しておきます。
まず完全に固定する場合ですが
インスペクタの AddComponent > Physics > Fixed Joint を行います。
以下、Fixed Joint のパラメータ
- ConnectedBody どのオブジェクトに接続させるかを指定します。 円柱2は円柱1に、円柱1はトーラスを指定します。何も指定しないと、空中に指定されます。
- Break Force どのくらいの強さを与えたら連結が解除される(ぶっ壊れる)か指定します。今回は連結が解除され(ぶっ壊れ)ないので、Infinityを指定します。
- Break Torque どのくらいのトルクを与えたら連結が解除されるか指定します。今回は連結が解除されないので、Infinityを指定します。
- Enable Collision オンのとき、接続した同士で衝突が起こります。鎖とかのときに使うのかな今回は衝突しないのでオフを指定します。
- Enable Preprocessing 処理しきれないような力を加えたときに、なんとか安定性を保とうとします。オンを指定します。下の図はEnable Prepocessingをオンとオフの状態のオブジェクトにものすごく力を加えたときの状態を比較したものです。
これで固定が行われました。
最後にトータスの固定です。
トータスは回転させなくては行けないので、 Fixed Joint ではなく Hinge Joint を使います。
次にHinge Joint(ヒンジジョイント)です。ヒンジは蝶番の意味です。
位置的には固定するけど、回転は行えるイメージです。
詳細はこちら、このサイトでは今回の仕様に必要な箇所だけ書いていきます。
Hinge Joint
- Connected Body 指定なしで、空中に固定されるので、指定なしにします。
- Anchour 回転軸を指定します。
- Axis 回転方向を指定します。画面に表示された矢印を回ります
- Auto Configure Connected Anchour 軸を自動的に指定します。今回、ただの回転運動なので、AnchourとConnectedAnchourは同じ位置です。なので今回はチェックをつけるだけで下のConnected Anchorを自動的に入力してくれます。
- Break Force どのくらいの強さを与えたら連結が解除される(ぶっ壊れる)か指定します。今回は連結が解除され(ぶっ壊れ)ないので、Infinityを指定します。
- Break Torque どのくらいのトルクを与えたら連結が解除されるか指定します。今回は連結が解除されないので、Infinityを指定します。
- Enable Preprocessing 処理しきれないような力を加えたときに、なんとか安定性を保とうとします。オンを指定します。下の図はEnable Prepocessingをオンとオフの状態のオブジェクトにものすごく力を加えたときの状態を比較したものです。
以上で完成です。またSASUKEに近づきました。
また、これでチェーンやシーソー、ドアなど、いろいろと使えそうです。
興味ある方はぜひ作ってみてください
コメント