Version: 2023.1
言語: 日本語
ラグドール物理
ジョイントとラグドールの安定性

ラグドールの作成

Unity では特別なウィザードがあり、ラグドールをすぐに作成することができます。それぞれ異なる手足パーツをウィザード上の対応するプロパティの上にドラッグするだけです。そして、Create ボタンを押すと Unity はラグドールを構成し、Colliders , Rigidbodies , Joints を自動作成します。

キャラクターの作成

ラグドールは スキンメッシュ (3D モデリングアプリケーションでリグが設定されたキャラクターメッシュ) を利用しています。このため、ラグドールキャラクターは Autodesk® Maya® のような 3D パッケージで作成する必要があります。

キャラクターを作成してリグ設定を行ったら、通常は Project Folder へアセットを保存します。その後 Unity に切り替えると、キャラクターのアセットファイルが表示されます。そのファイルを選択すると、Inspector 内に Import Settings ダイアログが表示されるので、Mesh Colliders が有効でないことを確認してください。

ラグドールウィザードの使い方

ソースアセット本体から ラグドール を作成することはできません。これにはアセットのソースファイルの編集が必要となるので、不可能です。キャラクターアセットからインスタンスを作成し、ラグドールにした後、再利用できるように プレハブ として保存しましょう。

キャラクターのインスタンスを作成するためにはキャラクターを プロジェクトビュー から Hierarchy View の上にドラッグします。Hierarchy 内のインスタンス名の左にある小さい矢印をクリックして、Transform Hierarchy を展開します。これでラグドールのパーツを割り当てる準備ができました。

ラグドールウィザードを開くためにはメニューで GameObject > 3D Object > Ragdoll… を選択します。これでウィザードが表示されます。

ラグドールウィザード
ラグドールウィザード

ウィザードへのパーツ追加は簡単な作業です。キャラクターインスタンスのそれぞれの異なる Transform をウィザードの適切なプロパティの上にドラッグします。これはキャラクターを自ら作成していれば簡単な作業です。

Create をクリックします。これで 再生モード に入ると、ラグドールとしてモタモタ動くことを確認できます。

最後のステップはセットアップした ラグドール をプレハブとして保存することです。メニューで Assets -> Create -> Prefab を選択します。プロジェクトビューで “New Prefab” が表示されます。これを“Ragdoll Prefab”と名前を変更します。ヒエラルキーから ラグドールキャラクターのインスタンスを “Ragdoll Prefab” の上にドラッグします。これでセットアップは完了しました。再利用できるゲームキャラクターはできましたので好きなように使うことができます。

ノート

ラグドール ウィザードで作成されたキャラクタ ジョイントの場合、ジョイントの Twist 軸は四肢の最大のスイング軸に対応し、ジョイントの Swing 1 軸は四肢の小さなスイング軸に対応し、ジョイントの Swing 2 軸は四肢のツイスト用に使用され ます。この命名法は、レガシーな理由によるものです。

ラグドール物理
ジョイントとラグドールの安定性