Unityで超シンプルで超カンタンに”揺れもの”の実装

  • 43
    Like
  • 0
    Comment
More than 1 year has passed since last update.

今回は、「揺れもの」について。

ひとむかし前は、「揺れもの」ってちょっとだけハードルが高いものだったんだけども、Unityの登場ですっごく身近なものになりました。
そんな「揺れもの」について説明します。

※揺れものとは、3DCGで髪の毛、スカート、カーテン、振り子など
読んで字のごとく物理シュミレーションで揺れる表現をする総称です。

以下から解説!

今回使うのは、Fixed JointとHinge Joint(ヒンジ)を使いました。
http://docs-jp.unity3d.com/Documentation/Components/class-HingeJoint.html

スクリーンショット 2014-09-21 2.40.04.png
※鉄球と鎖にはRigidbodyをつけてください。

サンプル画像のように鎖にくっついた鉄球を揺らす表現を作ります。
鉄球と鎖は適当な感じで用意しています。
スクリーンショット 2014-09-21 2.54.46.png

鉄球と鎖を選択して、Fixed Jointを選択。
これで、鉄球と鎖が固定化されました。
スクリーンショット 2014-09-21 2.55.55.png

次に鎖と鎖をつなぐには、Hinge Jointを使います。
スクリーンショット 2014-09-21 2.57.30.png

鎖を選択して、Hinge Joint。
InspectorのConnected Bodyに次の鎖(つなぎたいオブジェクト)を入れる。
この鎖を鎖がある分繰り返します。
また、当然ですが最後の鎖には、Connected Bodyは入れなくて問題ありません。
スクリーンショット 2014-09-21 2.58.43.png

はい!これで終わります。
はやい!しかも、スクリプトいっさい不要でした!

<出来上がりの動画>
http://youtu.be/zMlUAIKQBOg

<Hinge Jointの設定について>
Ancher:軸の位置
Axis:軸の方向
Use Spring;ばね運動をするかどうか
Spring:ばねの戻ろうとする力
Damper:ばねの重さ
Target Position:戻る時の力
Use Moter:Jointへ常に力を加えた状態にする。