講習会で作ったサンプルを拡張しました。
講習会では、MoGraphで作ったオブジェクトにThinkingParticlesをくっつける方法が判らなかったのですが、その後調べたところ簡単にできました。
サンプルファイル1(ただ位置を合わせただけ)
http://www2.11moon.com/sample_files/201 ... ph_TP2.zip
サンプルムービー2(ユーザデータのスイッチを使って切り離せるようにした)
http://www2.11moon.com/sample_files/201 ... ph_TP3.mp4
サンプルファイル2
http://www2.11moon.com/sample_files/201 ... ph_TP3.zip
サンプルムービー3(減衰ノードを使って徐々に切り離せるようにした)
http://www2.11moon.com/sample_files/201 ... ph_TP4.mp4
サンプルファイル3
http://www2.11moon.com/sample_files/201 ... ph_TP4.zip
サンプルファイル1、2に関しては、特に難しい点はありません。位置を取り出す時にMoGraphのノードを使っているだけです。
サンプルファイル3に関しては、パーティクルをある特定の腕にくっつけるために、「ID」というデータチャンネル(ThinkingParticlesのユーザデータ)を追加しています。
こうしないと、パーティクルが腕から離れた後に「並べ替え」が発生するからです。
例えば、通常「PPass」の「パーティクル」ポートは「0,1,2,3,4,5,6,7,8,9...」と順番に整数を出力します。
そして、それぞれのパーティクルが、対応する番号の腕にくっつきます。
次に、ここで「2」番のパーティクルが別のブループに移り、腕から離れたとします。
すると、パーティクルの数が1個減り、それまで3番だったパーティクルが2番に出力されてきます。
したがって、このままだと、3番のパーティクルが2番の腕に移動します。これでは困ります。
そこで、腕の位置を調べる時に「ID」ポートを使い、3番のパーティクルは必ず3番の腕にくっつくようにしているわけです。
IDポートには、パーティクルが生成された時の番号が入っています。
つまり、パーティクルが減らなければ、「パーティクル」ポートが出す値も「ID」ポートが出す値も同じです。
MoGraph_TP
Re: MoGraph_TP
いくつかバリエーションを作りました。詳細はCGTalkの以下のスレッドを参照して下さい。
http://forums.cgsociety.org/showthread. ... ost7030668
1. TPやXPressoを使わずに、全てMoGraphの機能で作ったサンプル。
http://www2.11moon.com/sample_files/201 ... yader2.c4d
このサンプルでは、小球のダイナミックス計算がスタートするきっかけを「衝突」に指定し、衝突するダミーオブジェクトのモードを「ゴースト」にしています。
こうすると、ダミーオブジェクトが衝突しても小球は動かず、ただ計算がクローナーからダイナミクスに移ります。
2. MoGraphとXPressoを使って作ったサンプル。
http://www2.11moon.com/sample_files/201 ... yader3.mp4
http://www2.11moon.com/sample_files/201 ... yader3.zip
しかし、小球をランダムに切り離すにはもう少し高度な操作が必要で、これをMoGraphの機能だけで組む方法は判りませんでした。
そこで、XPressoを使ってMoGraph選択範囲の中身を切り替えてみました。
http://forums.cgsociety.org/showthread. ... ost7030668
1. TPやXPressoを使わずに、全てMoGraphの機能で作ったサンプル。
http://www2.11moon.com/sample_files/201 ... yader2.c4d
このサンプルでは、小球のダイナミックス計算がスタートするきっかけを「衝突」に指定し、衝突するダミーオブジェクトのモードを「ゴースト」にしています。
こうすると、ダミーオブジェクトが衝突しても小球は動かず、ただ計算がクローナーからダイナミクスに移ります。
2. MoGraphとXPressoを使って作ったサンプル。
http://www2.11moon.com/sample_files/201 ... yader3.mp4
http://www2.11moon.com/sample_files/201 ... yader3.zip
しかし、小球をランダムに切り離すにはもう少し高度な操作が必要で、これをMoGraphの機能だけで組む方法は判りませんでした。
そこで、XPressoを使ってMoGraph選択範囲の中身を切り替えてみました。