3ds Maxの新しい物理計算エンジン

人気のある3Dモデリングソフトウェア3ds Max 2012の最新版では、オートデスクはHavok物理エンジンを使用して相互作用を計算するという伝統から離れ、新しいMassFX開発を導入しました。 RuNetには、オートデスクの新しいイニシアチブに関する記事が掲載されましたが、ほとんどが虐待的でカジュアルです。 主に連続性の欠如と機能の欠如、つまり大まかに言えば、湿気のためにScられた。



この記事では、いわば、3ds Max 2012のMassFXの概要を紹介したいと思います。以下のテキストは、3Dスペシャリストにとって啓示になることはほとんどありませんが、十分なHabrの読者の間で。



行きましょう。



MassFXの背後にある基本的な考え方は、ソリッドモデリングです。 これは、相互作用中にボディが変形しないことを考慮して計算が行われることを意味します。 また、物理的相互作用を計算するために、シミュレートされたオブジェクトの幾何学的表面のコピーが作成されますが、これは一般的な場合、元のオブジェクトと一致しません。 つまり レンダリング時には、1つのオブジェクトが物理をレンダリングするために使用され、別のオブジェクトはレンダリング時に非表示になります。 これは非常に重要なポイントであり、常に留意する必要があります。 簡単にするために、描画されたモデルを引き続きグラフィックボディ、物理学を計算するためのコピー(物理ボディ)と呼びます。



2番目の主要な単純化は、凹状のジオメトリボディがサポートされないことです。 むしろ、それらは完全にはサポートされていません。 これは実際にはどういう意味ですか? 車の底の下で小さなボールが転がるシーンをシミュレートするとします。 この場合、底面はホイールに対して凹面と見なすことができ、計算されたボディの表面は平らで、タイヤの表面のレベルになります(大まかに言うと、「脚のないキャビネット」が計算されます)。 これは、たとえ視覚的には車輪の間に着地したとしても、仮想ボールは車とのあらゆる接触点で跳ね返ることを意味します。 グラフィックボディがより単純な物理ボディの組み合わせとして表される場合、複合オブジェクトを使用してこの制限を回避する方法があります。たとえば、テーブルは4つの脚と1つのテーブルトップとして表すことができます。 この「耳のフェイント」を使用すると、上記の同じ車とボールでシーンを正しく計算できます。



オブジェクトの物理コピーを作成するには、MassFX Rigid Bodyモディファイヤをモディファイヤスタックからグラフィックボディに適用する必要があります。



MassFXには、ダイナミック、キネマティック、およびスタティックの3つのタイプの物理ボディがあります。 前者は、自身の質量、システム内の重力、および摩擦を考慮して計算されます。 このようなボディの最も単純な例はボールです(ボールだけが変形しません)。 キネマティックボディは、アニメーションパラメータを使用してアニメーション化でき、重力の影響を受けず、ダイナミックタイプボディによって移動することはできませんが、ダイナミックボディ自体を「キック」できます。 物理法則に従って移動するのではなく、設定したパスに沿って移動するオブジェクトを作成するのに便利です。 静的なボディは、凹型のジオメトリをサポートする唯一のものであり、キネマティックボディに似ていますが、アニメーション化できません。 計算を保存できます。 たとえば、静的なボディを使用すると、固定されたキャビネットをシミュレートするのに便利です。動的なボールは、そのようなキャビネットから正しく跳ね返ります。



私の希望を満たすために、グラフィックオブジェクトと物理オブジェクトの違いに関するいくつかのイラストを紹介します。



画像

画像



上記の物理ボディでは、密度、質量、静止摩擦、運動摩擦、弾性などのパラメーターを使用できます。 現実の世界と同様に、質量は肉体の体積全体の密度に依存します。 したがって、サッカーボールとボウリングボールの動作が正しく計算されます。 通常、静止摩擦は運動摩擦よりも大きいため、摩擦は2つのパラメーターに分けられます(車を動かすのか、それとも転がり続けるのが簡単ですか?)。 さて、弾力性がリバウンドの原因です。 だからそれは簡単です-それ以上。

また、MassFXリジッドボディモディファイヤのパラメータで、ボディのタイプとそのサーフェスの表示方法(プリミティブ、複合オブジェクト、カスタムなど)を選択できます。 たとえば、私が思うに、ボールをモデル化するには原始的なボールを選択するだけで十分であることは明らかですが、テーブルまたは椅子は複合オブジェクトとしてより適切に表現されます。



また、計算時には、グラフィカルモデリングが実行される単位に注意する必要があります。 常に実際の物理的寸法を使用してください。 たとえば、5階の窓からテレビを投げたり、オスタンキノタワーからテレビを投げたりすることができます。 もちろん、飛行時間は異なります。 しかし、仮想世界では、オスタンキノタワーの高さの家を描くことができ、その下の車と歩行者はそれぞれスケーリングします。 しかし、MassFXがすべてを「人生のように」計算しようとしていることを忘れないでください。したがって、スケーリングの場合、テレビが5階からではなく85階から落ちるかのように飛ぶことに驚かないでください。 ちなみに、この場合の質量の増加は役に立たないでしょう。理想的には質量は落下速度に影響せず、重力の値にのみ影響するからです。



そして、簡単なレビューの結論として、Maxでのソリッドモデリングの一般的な開発動向に注目したいと思います。



どうやら、オートデスクはMaya製品の使い古された道をたどっていたようです。 Maxの以前のバージョンでは、落下体を作成するために、重力、サーフェスの追加、固体オブジェクトのコンテナの作成などの一連の動きがありました。 MassFXでは、1つの修飾子を適用し、計算ボタンをクリックするだけです。 Autodesk Mayaでもほぼ同じことが観察できます。これにより、当然、シミュレーション時間が短縮されます。 そして、機能とパフォーマンスはすでにわずかに異なる面での質問です。



All Articles