ソフト ボディ使用のための準備をする

 
 
 

ソフト ボディの作成を始める前に、ソフト ボディ オブジェクトおよび障害物にどのタイプのジオメトリを使用するかを選択する必要があります。また、望みどおりのソフト ボディ衝突エフェクトを得るために、ジオメトリに適切な解像度を設定する必要があります。

ポリゴンと NURBS サーフェイス オブジェクト

ソフト ボディにはポリゴンまたは NURBS サーフェイス オブジェクトを使用できます。しかし、ポリゴン オブジェクトは NURBS サーフェイス オブジェクトとは異なり、ポイントがサーフェイス上に直接配置されているため、より正確なデフォーメーションを行います(オブジェクト ジオメトリの詳細については、「データ交換」を参照)。

また、高解像度のモデルを使用することもできます。ソフト ボディは、時間パフォーマンスの観点では実質的に解像度とは無関係なので、[サンプリング](Sampling)パラメータで定義されるラティスの解像度がより重要になります。

左側のポリゴン メッシュの球では、ポイントがサーフェイス上に直に配置されている

右側の NURBS サーフェイスの球では、ポイントはサーフェイスから離れている

注:
  • ソフト ボディは、階層になっているかどうかにかかわらず、複数のオブジェクトに適用できます。しかし、デフォーメーションは階層にはよらず、個々のオブジェクトごとに適用されます。つまり、ソフト ボディを親に適用しても子には継承されないため、階層構造の「グローバル デフォーメーション」にはなりません。

  • ソフト ボディはグループ内の各オブジェクトに適用できますが、グループ自体には適用できません。

  • ソフト ボディはラティスには適用できません。

クラスタにソフト ボディを適用する

クラスタ(複数のポイントやポリゴンなど)にソフト ボディを使用すると、そのオブジェクトの一部だけをソフト ボディによって変形させることができます。たとえば、キャラクタの腹部のポイントのクラスタだけを、何らかのゼリー状のソフト ボディによって変形させることが可能です。

ソフト ボディはクラスタに適用されますが、[SoftBodyOp]オペレータは、クラスタ自体ではなくオブジェクトのジオメトリ ノードの直下に格納されます。ただし、クラスタへの参照が[SoftBodyOp]ノードの下に表示されます。

ソフト ボディ クラスタとの衝突に使用する障害物を設定する場合は、まず、ソフト ボディ クラスタではなくソフト ボディ オブジェクトを選択します。これは、衝突はクラスタに対してではなくオブジェクトに対してのみ発生するためです。

適切な解像度

ソフト ボディ オブジェクトは、望むエフェクトを得るのに十分な高解像度にしましょう。しかし、高解像度のオブジェクトでは計算に時間がかかります。

一般的にソフト ボディ オブジェクトでは低解像度が好ましくない理由は 2 つあります。

  • 十分な衝突効果を得るには、多数の頂点が必要です。また、頂点がうまく処理されたとしても、一部の障害物のポリゴンをエッジが通り抜けてしまう可能性があります。

  • ポリゴンの細分割(サブディビジョン)では新しい頂点が追加されますが、元の頂点の配置を変えてしまい、障害物に不自然さを招くことになります。

すべてのシミュレーションと同様に、適切な結果を得る上で許容できる最も低い解像度を見つけることがポイントとなります。これを実行する方法の 1 つは、基本的なシミュレーションと衝突を設定する際に、許容範囲の低解像度を使用した「代役」モデルを使用するというものです。設定を終えたところで、高い解像度のモデルと入れ替えて、それに合わせてパラメータを調整します。