Unityでシーソーを作る2
Unityってほんと便利。
もっと簡単にシーソーを作れないか探したら
Hinge Jointというものがありました。
これでブロックの中心を固定するだけでシーソーできるやん・・・
ゲーム開発に必要なのはプログラミング能力ではなくて
ツールを使いこなす能力ですね。
説明するまでもないですが、やり方を記載しておきます。
いやほんと説明不要なんですがね。
Body TypeがDynamicのオブジェクトにHinge Jointを追加します。
何やら緑の円が表示されましたが、これでオブジェクトの中心が固定されました。
固定したい箇所はインスペクターのConnected Anchorで設定できます。
デフォルトだとオブジェクトの中心が設定されているので
そのままでシーソーの挙動になります。
このままではシーソーが途中で止まることなく回転し続けるので
回転範囲を決める必要があります。
Hinge Jointを追加した際に緑の円が表示されましたね。
実はこれがオブジェクトの回転範囲を表しています。
この回転範囲はインスペクターで設定できます。
Use limitをチェックし、Angle Limitsをクリック。
Upper AngleとLower Angleに回転範囲を設定すればOK。
これで回転角度の上限と下限が設定できます。
角度を制限したので緑の円が扇形になりました。
このように、回転範囲がオブジェクト上に表示されるので
視覚的にもわかりやすいです。
Unityすごい。
インスペクター上はその他にもMotorやTorqueが設定できます。
ヒンジジョイントしたオブジェクトを自動で回転させたり、
回転スピードを調節したり、
一定以上の力がかかると突然回転が速くなったり、
といった設定ができます。
うーん
Unityすごすぎ