この例では、Orange (オレンジ)と Spoon (スプーン)という 2 つのモデルを使用します。これらのモデルにジョイントを適用して、オレンジをスプーンの先端から転がしてみましょう。
注: 球体のモデルで物理ソルバを使用する必要がある場合は、Asset Browser の polySphere 要素を使用してください。Elements フォルダの Sphere 「要素」には、予期しない結果が生成される可能性のあるジオメトリが含まれています。
チェーン内の複数のオブジェクトを接続するには、「ジョイント チェーンの作用を作成する」を参照してください。
複数のオブジェクト間にジョイントの作用を作成するには:
- X-Ray モードに切り替わるまで、Ctrl キーを押しながら A キーを押します。
- Asset Browser の Solvers フォルダから、Physics ソルバを Viewer ウィンドウの空の領域にドラッグします。
- Asset Browser の Physical Properties フォルダから、Rigid Body 物理プロパティを、接続する各オブジェクト上へドラッグします。
この例の場合は、Rigid Body プロパティを Spoon オブジェクトに追加します。
- Elements フォルダから Null 要素を Viewer ウィンドウへドラッグし、ジョイントの作用の対象とするオブジェクトとオブジェクトの間に配置します。この Null 要素は、ジョイントの動きのピボット ポイントになります。
ピボット ポイントには任意のオブジェクトを使用できますが、物理プロパティのジョイントの方向はこのピボット オブジェクトのローカル方向から読み取られることになります。
- Navigator ウィンドウで Physical Properties フォルダを展開します。2 番目のオブジェクトが動きの基点とするオブジェクトの Rigid Body プロパティをクリックし、Setup ペインに切り替えます。Activation
メニューから Passive を選択します。
この例では、スプーンは動かさずにオレンジだけを転がしたいため、Spoon オブジェクトは Passive に設定します。
- Asset Browser の Physical Properties フォルダから、Joint 物理プロパティを、Viewer ウィンドウの Null 要素上へドラッグします。
- Navigator ウィンドウの Scene Browser で Joint を選択し、Setup を展開して Joint が Active に設定されていることを確認します。続いて、Null Joint Connections アセット リストで、ジョイントの作用の対象とするオブジェクトを選択します。
この例の場合は、Orange と Spoon が対象となります。
あるいは、オブジェクトをアセット リストへドラッグして階層の順番を決定する方法もあります。その場合は、オブジェクトを選択した順番が階層の順番になります。たとえば、先に Spoon を選択した場合は Spoon が親になり、Orange を先に選択した場合は
Orange が親になります。
- Joint ペインの Type メニューからジョイントのタイプを選択します。ジョイントのタイプとその動作については、「ジョイントのタイプ」を参照してください。また、各種設定についての詳細は、「ジョイントの設定」を参照してください。
- Scene Browser に切り替えて、Solvers > Physics Solver フォルダを選択します。Solver をダブルクリックして Solver ペインを表示し、Online をクリックします。
ヒント: または、Properties ウィンドウの Physics Solver プロパティの Active オプションをクリックすることもできます。
- Set Start State をクリックして、オブジェクトの開始時の位置を設定します。
- Physical Properties を展開し、ジョイント設定、Solve ペイン、Animation ペインでオブジェクトのプロパティを定義します。
- Scene Browser の Physics Solvers フォルダで Solver をダブルクリックして Solver ペインを表示し、Live をオンにします。
注: 物理ソルバの Live をオンにする場合は、物理プロパティ(ラグドール、リジッド ボディ、ジョイントなど)がアタッチされているオブジェクトを選択解除する必要があります。選択されたままだと、オブジェクトが物理ソルバを無視してしまいます。これは、記録時に物理ソルバを
Live に設定した状態で、物理プロパティ オブジェクトを選択すると、Transport Controls に表示されているフレーム レートに基づいて FCurve が再計算されるためです。