リジッド ボディのコンストレイント

 
 
 

リジッド ボディ間にコンストレイントを設定して、リジッド ボディの動きを特定のタイプに限定することができます。コンストレイントを設定すると、たとえば、ちょうつがいで動く跳ね上げ式のドアを作成できます。ドアの上に木箱が落下すると、その衝突によってドアが開き、木箱はそのドアから中へと落下します。

コンストレイントを使用する最も一般的な方法は、2 つのリジッド ボディを互いに拘束し、アクティブな方をシミュレーションに反応させ、パッシブな方をアクティブ リジッド ボディの「アンカー」として動作させる方法です。単一のアクティブ リジッド ボディをグローバル空間内のポイントに拘束したり、複数のアクティブ リジッド ボディをチェインとして拘束したり、複数のアクティブ ボディを 1 つのパッシブ リジッド ボディに拘束することもできます。

Softimage で使用可能なリジッド ボディ コンストレイントには、ちょうつがい、ボールとソケット、スプリング、スライダ、固定などがあります。これらはすべて、[Simulate]ツールバーの[作成](Create)[リジッドボディ](Rigid Body)[リジッド コンストレイント](Rigid Constraint)または[マルチ コンストレイント ツール](Multi Constraint Tool)メニューから選択できます。

各タイプのコンストレイントの基本的な作成手順については、「リジッド ボディ コンストレイントの作成の概要」を参照してください。

コンストレイントを作成すると、現在の環境の[Constraints]グループにコンストレイント オブジェクトが追加されます(「シミュレーション環境」を参照)。

リジッド ボディ コンストレイントの作成の概要

使用するコンストレイントのタイプに応じて、2 つのリジッドボディの間にコンストレイントを設定し、ボディを空間内の特定のグローバル位置に拘束したり、複数のアクティブ リジッド ボディを 1 つのリジッドボディに拘束できます。

コンストレイントを使用する最も一般的な方法は、2 つのリジッド ボディを互いに拘束し、アクティブな方をシミュレーションに反応させ、パッシブな方をアクティブ リジッド ボディの「アンカー」として動作させる方法です。

基本的なワークフロー

基本的なワークフローは 2 通りあります。

  • 2 つのオブジェクトを相互に拘束するには、[作成](Create) [リジッド ボディ](Rigid Body) [リジッド コンストレイント](Rigid Constraint)メニューからコンストレイント コマンドを選択します(「2 つのリジッドボディを相互に拘束する」を参照)。

    または

  • 複数のオブジェクトを 1 つのオブジェクトに拘束するには、[作成](Create) [リジッド ボディ](Rigid Body) [マルチ コンストレイント ツール](Multi Constraint Tool)メニューからコンストレイント コマンドを選択します(「複数のリジッド ボディを 1 つのオブジェクトに拘束する」を参照)。

リジッドボディをグローバル空間内のポイントに拘束する場合は、いずれのワークフローでも行うことができます(「単一のリジッド ボディを空間内のポイントに拘束する」を参照)。

PhysX コンストレイントと ODE コンストレイントについて

PhysX および ODE ダイナミクス エンジンは両方とも、すべてのタイプのコンストレイントをサポートしていますが、PhysX はスライダ コンストレイントおよびスプリング コンストレイント(「スプリング コンストレイントおよびスライダ コンストレイントをオフセットする」を参照)に対するオフセットもサポートしています。

また、PhysX は ODE とは違った方法でコンストレイント フォースを計算します。これは一般に高速で堅固ですが、最終的なコンストレイントは ODE を使った場合に比べてよりソフトになります。

コンストレイントを厳しくするには、[Dynamics Operator]プロパティエディタで、[シミュレーション精度](Simulation Accuracy) [サブステップ](Substeps)の値を増分します(「PhysX対応のシミュレーション精度の設定」を参照)。ただし、シミュレーションの精度が上がると、シミュレーションの結果が多少変化する場合があります。

コンストレイントの初期状態を変更する

リジッド ボディ コンストレイントは、Softimage のその他の 3D オブジェクトと同様に、変換(移動、回転、スケール)、選択、削除が可能な実際のオブジェクトです。コンストレイント オブジェクトおよびそのコンストレイント オブジェクトによる拘束を受けたリジッド ボディ オブジェクトの初期位置および向き(変換)を変更した場合、この新しい変換は、変更されたすべてのオブジェクトの初期状態として自動的に使用されます。

詳しくは「リジッドボディの初期状態の設定」を参照してください。

コンストレイント オブジェクトを非表示にする

コンストレイント オブジェクト自体の表示/非表示を切り替えることができます。非表示のコンストレイント オブジェクトは、Softimage のその他の非表示オブジェクトと同様に、単に表示されていないだけで、リジッド ボディ シミュレーションに存在します。コンストレイント オブジェクトが非表示になっていると、シミュレーションが不安定になる場合があります。

コンストレイント オブジェクトを保持したまま、シミュレーションで影響が出ないようにするには、非表示のコンストレイント オブジェクトをミュートにしてください。

リジッド ボディ コンストレイント オブジェクトの表示を切り替えるには

  1. Explorer で、表示または非表示にするコンストレイントを選択し、[Enter]を押します。

  2. プロパティ エディタで[可視](Show Links)オプションを切り替えます(オプションを選択すると、コンストレイント オブジェクトが表示されます)。

リジッド ボディ コンストレイントのミュート

リジッド ボディ コンストレイントをミュートして一時的に無効にすることができます。この操作を行うと、コンストレイントが初期状態に戻ります。

リジッド ボディ コンストレイントをミュートするには

  1. ミュートするコンストレイントを選択し、[Enter]を押します。

  2. プロパティ エディタで[アクティブ](Active)オプションを選択解除します。