ご注意:こちらの記事は 2013年5月 に投稿しました古い記事です。
MAXの物理シミュレーションといえば、しばらく reactor がメインだったんですが、
MAX2010あたりからチラホラ新参者が現れ、今ではこの MassFX がメジャーなんですかね?
せっかく reactor 覚えたのに、実戦では2回くらいしか使わなかった…(´・ω・`)
とりあえず覚えておいた方が良さそうなので、ざっくり使い方を勉強してみる。
Contents
概要
基本概念は”reactor”とほぼ一緒のようです。
別記事:【3dsMax – reactor】 物理シミュレーションの使い方
最初にシミュレーションするオブジェクトを登録。
次に登録したオブジェクト同士の関係性を定義。
最後に、各オブジェクトの質量や摩擦を定義しつつシミュレーション、
TRY&errorを繰り返し、理想の動きになったら完成!
という流れですね。
使い方(揺れ物の場合)
- “MassFX Toolbar”を起動。※上記画像
(MassFXに関する作業は全てこのツールで操作します。) - シミュレーションしたいオブジェクトを選択し、
“MassFX Toolbar”の左から2番目のボタンで”Rigid Body”に登録する。
動的リジットボディ
完全にシミュレーションで動かしたいオブジェクト運動学的リジットボディ
アニメーションがついているオブジェクト静的リジットボディ
コリジョンに使いたいオブジェクト? - 全て定義したら、一度”再生ボタン”で、ちゃんと登録されているか確認
(この時点では関係性を決めていないので、ただ落下するだけかと思います。) - 問題なければ”巻き戻しボタン”で戻り”Rigid Body”の関係性を決めていきます。
- 繋げたい”Rigid Body”の末端を選択し、
“MassFX Toolbar”の左から3番目のボタンで”Constraint”を定義する。リジッドコンストレイント
固定された接続。平行移動、スイング、ツイストがすべてロックされてます。スライドコンストレイント
Y軸の平行移動が可能な接続。その他の可動系はロックされています。ヒンジコンストレイント
一軸のスイングが可能な接続。その他の可動系はロックされています。ツイストコンストレイント
ツイストが可能な接続。その他の可動系はロックされています。ユニバーサルコンストレイント
二軸のスイングが可能な接続。その他の可動系はロックされています。ボールとソケットコンストレイント
ボールジョイント系な接続。平行移動のみロックされています。 - 作成したコンストレイントのパラメータを設定
(基本は”親オブジェクト”と”可動範囲”さえ設定すればOK!) - 繋ぎたいオブジェクトを全て定義したら、”再生ボタン”を押して動作確認してみる。
- この時点で問題なければ、そのままベイクして完成!
問題があるようでしたら、各”Rigid Body”の質量、摩擦係数などを
調整する必要があります。
調整したい”Rigid Body”を選択(複数可)し、
“MassFX Toolbar”の一番左のボタンでMassFX Toolを起動。 ※上記画像
“edit”タブの”Physical Material”を開き、”Rigid Body”の詳細を定義していきます。
“Rigid Body”の重さを定義するパラメーター
片方に数値を入れるともう片方も連動して動くようです。
“Rigid Body”の摩擦係数を定義するパラメーター
止まってる時(Static)と動いてる時(Dynamic)の2パターンあります。
“Rigid Body”の反発力を定義するパラメーター
エラー対策:他のパソコンで開けない、フリーズする。
physxをupdateしてシミュレーションしたMAXデータを、
updateしてないMAXで開こうとすると、パソコンごとフリーズして動かなくなる(T_T)
対策としては、同じupdateを全パソコンにも適用するか、
シミュレーション結果をベイクして、physx関係のモディファイア等を削除すれば開けるようです。
参考にさせていただいたサイト
youtube – gmpdesignsさんの「チェーン構造のセットアップ方法」
youtube – Atiq Alexさんの「ボーンを使用した揺れ物のセットアップ方法」
youtube – seismicxchargeさんの「3dsmax CAT+MassFX 試行」
autodesk.com – MassFX 公式マニュアル