MoGraphとXPresso

レベル/ 対象者:中級/ MoGraphを自由自在に動かしたい人。他人とは違う表現を求めている人。
対象ソフトウエア、プラグイン:CINEMA 4D R12 Broadcast、Studio

困ったときのXPresso。

冨士 俊雄/ gtofuji@gmail.com
章番号 題名 内容、及び関連する章 作成日/注記
633 3_MoGraph選択範囲を制御する MoGraph選択範囲のデータを取り出す、MoGraph選択範囲にデータを書き込む、MoGraph選択範囲に選択を追加する、MoGraph選択範囲を使ってダイナミクスを制限する、 2011.10.3
Previous Top Next

Step 1

たくさんのオブジェクトを効率よく動かす

 MoGraphは、簡単に言うと「たくさんのオブジェクトを、効率よく動かす機能」です。

 ところが、CINEMA 4Dには他にも似たような機能があります。例えば「パーティクル」や「XPresso」、「ThinkingParticles」、「ダイナミクス」などです。それではなぜ、MoGraphという機能が新しく作られたのか、またMoGraphとその他の機能の関係はどうなっているのか、それを理解するには、まずCINEMA 4Dの「歴史」を振り返る必要があります。


1. CINEMA 4D R4以前
 多数のオブジェクトを効率よく動かす機能はありませんでした。

2. R5
 XLで標準のパーティクル機能が導入され、多数のオブジェクトを効率よく動かせるようになりました。しかし、あまり複雑なことはできませんでした。また、標準パーティクルの機能はR12まで進化せず、現在でもあまり複雑なことはできません。

3. R6〜R7
 COFFEEエクスプレッションが導入され、テキストでプログラムを書けばかなり複雑なことができるようになりました。現在でも複雑な表現をする場合はXPressoの中に入っているCOFFEEノードを使います。

 しかし、標準のパーティクルにはCOFFEEと連動するための機能がなく、COFFEEだけで多数のオブジェクトを動かすためには、必要な機能を全て自分で作る必要があり、非常に大変でした。

4. R8〜R9
 XPressoとThinkingParticles(TP)が導入されました。XPressoはノードベースのプログラム環境で、COFFEEノードを使うとテキストベースのプログラムを混在させることもできます。また、TPはXPressoの中でパーティクルを扱うための拡張モジュール(ライブラリ)です。

 XPressoとTPを組み合わせることで、プログラムを書けない人でも、それなりの機能を簡単に作れるようになりました。しかし複雑な機能を作るには、複雑なXPressoを組んだり、COFFEEを使ってプログラムを書く必要がありました。

5. R10〜R12
 多数のオブジェクトを効率よく動かすもう一つの方法として「MoGraph」が導入されました。MoGraphには二つの側面があります。一つは、初心者向けに「プログラムを全く書かずに、XPressoやThinkingParticlesの機能を実現する」こと。もう一つは、上級者向けに「XPressoやThinkingParticlesの機能を拡張すること」です。

 MoGraphは、一見初心者向けの機能に見えますが、至る所でXPressoやThinkingParticles、ダイナミクス、パーティクルと連動するようにできています。つまり、MoGraphを「新しい拡張モジュール」と考えれば、これまでのXPressoやThinkingParticlesを超える表現が可能になります。

 

 このような歴史を鑑みると、現在のCINEMA 4D R12で最も効率のいい方法は、MoGraphで可能な表現はMoGraphだけで実現し、MoGraphを超える表現については他の機能を組み合わせて実現する、ということになるでしょう。

 

 

Step 2

MoGraphの基本

 MoGraphは非常に巨大な機能です。したがって「基本」を理解することが重要です。MoGraphに限らず、巨大なシステムには必ずしっかりした基本があります。

 MoGraphは巨大ですが、所詮は基本機能の組み合わせに過ぎません。つまり、基本をよく理解すれば自然と全体が見えてくるのです。例えば「言語」がそうです。「文字(音)」が組み合わさって「言葉」となり、言葉が組み合わさって「文章」となります。MoGraphも同じです。


 MoGraphの基本は以下の通りです。これについて、以下のステップで詳しく説明していきます。

1. MoGraphは、「MoGraphオブジェクト」を使ってクローンを作る。
 ここで、「クローン」というのは「たくさんのオブジェクト」という意味です。また、「直接クローンを作る方法」の他に、「何かを参照してクローンを作る方法」や「何かをクローンとみなす方法」があります。


2. MoGraphは、「イフェクタ」を使ってクローンをコントロールする。
 また、MoGraphには、「MoGraph選択範囲」や「減衰」、「ウエイト」等イフェクタの働きを限定するためのいろいろな方法があります。


3. MoGraphは、他のCINEMA 4Dオブジェクトや機能と自由に組み合わせられる。
 MoGraphは、普通のオブジェクトを参照して、普通のオブジェクトを作ります。したがって、他のオブジェクトや機能と自由に組み合わせられます。特に「ダイナミクス」や「XPresso、TP」、「Sketch And Toon」との組み合わせは重要です。

 

 

Step 3

直接クローンを作る

1. MoGraphの「クローナー」オブジェクトは、自分の子オブジェクトを複製してクローンを作ります。

図601-1

 オブジェクトを直接複製する「モード」として、まず「線形」や「放射」、「グリッド配列」があります。この場合、「複製数」はクローナーの側で自由に指定できます。


2.  クローナーは複数の子オブジェクトを持つことができます。そして、子オブジェクトは指定した「ルール」にしたがって複製されます。まず、ルールを「反復」と「ランダム」にした場合、以下のように働きます。

図601-2

 

 次に「ブレンド」ですが、このルールには二つの働きがあります。まず、「同じタイプのプリミティブ」や「ポイント数が同じポリゴン」を入れた場合、ブレンドは「モーフ」として働きます。また、形状だけでなく、ライトに含まれる「色」や「明るさ」等のパラメータもモーフできます。

図601-3

 

 また、異なった種類のオブジェクトを入れた場合、ブレンドは以下のように働きます。

図601-4

 

 最後に「ソート」ですが、このルールはイフェクタの「クローンを修正」機能を使って操作することを前提としています。したがって、イフェクタを指定しない場合、複数のオブジェクトがあっても最初のオブジェクトしか使われません。


3. MoGraphにはクローナーによく似た機能として、「マトリックス」オブジェクトがあります。マトリックスは、言ってみればクローナーの機能の一部だけを取り出したもので、オブジェクトを複製せず、ただ座標だけを作ります。

 マトリックスは、座標しか持たない故に「座標だけにデフォーマを適用できる」ことと、「ThinkingParticlesを生成できる」という利点があります。マトリックスについては次のステップ4で詳しく説明します。


4. MoGraphの「破砕」オブジェクトを使うと、「既に存在する」たくさんのオブジェクトを直接クローンにできます。この場合、破砕は何も複製しません。

図601-5

 破砕は、エンジンやキャラクター等たくさんのオブジェクトで構成された複雑なものに、イフェクタやダイナミクスを適用したい場合に便利です。

 

 

Step 4

何かを参照してクローンを作る

1. 他のオブジェクトの上にクローンを並べたい場合は、クローナーのモードを「オブジェクト」に切り替えます。この場合、クローナーはリンクされたオブジェクトを参照し、自分の子オブジェクトを複製してクローンを作ります。

 参照するオブジェクトには、まず「ポリゴンやスプライン」を指定できます。

図601-6

 

 また、「パーティクルやThinkingParticles」も指定できます。

図601-7

 

 また、MoGraphの「マトリックス」オブジェクトも指定できます。

図601-8

 ThinkingParticlesやマトリックスを使うと、間接的にクローナーをXPressoで制御できるようになります。現在のところ、直接クローナーやその他のMoGraphオブジェクトをXPressoで制御することはできません。

 また、マトリックスを使うと、「オブジェクトの配列だけ」をデフォーマで変形できるようになります。一般的に、クローナーに直接デフォーマを適用すると、クローンまで変形してしまいます。

図601-9


2. 次に、MoGraphの「MoInstance」オブジェクトを使うと、リンクしたオブジェクトの「過去」を参照し、それをクローンにできます。この場合、MoInstanceは「過去のオブジェクト」を複製することになります。

図601-10

 別の見方をすると、MoInstanceはフレームごとにオブジェクトを新規に複製し、しばらく維持した後消去する、「パーティクルに似たオブジェクト」とも言えます。

 MoInstanceは、「時間にしたがって複製する」機能なので、アニメーションを再生していないと働きません。

 

 

Step 5

何かをクローンとみなす

 その他、MoGraphにはオブジェクト以外のもの、つまり「ThinkingParticles」や「文章」、「スプライン内部のポイント」、「押し出したポリゴン」、「ポリゴン1枚1枚」等をクローンとみなし、イフェクタを適用するためのオブジェクトがあります。

1. MoGraphの「マトリックス」オブジェクトを使うと、ThinkingParticlesをクローンとみなして、イフェクタを適用できます。

図601-11

 ThinkingParticlesは、直接クローナに参照させることもできるのですが、その場合TPの生成や消滅をTP側で制御する必要があります。ところが、マトリックスオブジェクトの「オブジェクト -> 生成 」で「ThinkingParticles」を指定すると、TPの生成や消滅までマトリックスオブジェクトの側で指定でき、操作が楽になります。


2. 次に、MoGraphの「MoText」オブジェクトを使うと、文章の「全て」や「行単位」、「単語単位」、「文字単位」をクローンとみなして、イフェクタを適用できます。

図601-12

Almost any element can be combined within MoGraph, 
which offers you endless creative possibilities.
So take time out to experiment as much as
you can with MoGraph - no matter how crazy
you think an animation may be!
Creating spectacular effects and animations
using simple Primitives is as easy as
1-2-3 using MoGraph.

 

3. 次に、MoGraphの「MoSpline」オブジェクトを使うと、「スプラインを構成するポイント」をクローンとみなして、イフェクタを適用できます。

図601-13

 また、MoSplineの場合はイフェクタに加えてパーティクルモディファイア(場)も使えます。

図601-14


4. 次に、MoGraphの「押し出し」オブジェクトを使うと、「ポリゴンを押し出した部分」をクローンとみなして、イフェクタを適用できます。

図601-15

 押し出しは、デフォーマと同様に、自分の親オブジェクトや兄弟オブジェクトに対して働きます。


5. 次に、MoGraphの「PolyFX」オブジェクトを使うと、「ポリゴン1枚1枚」や「スプラインの断片」、「スプラインセグメント」をクローンとみなして、イフェクタを適用できます。

図601-16

 PolyFXは、デフォーマと同様に、自分の親オブジェクトや兄弟オブジェクトに対して働きます。

 

 

Step 6

それ以外のMoGraphオブジェクト、シェーダ、ノード

1. 最後に、MoGraphの「トレーサ」オブジェクトについて説明します。トレーサは、リンクしたオブジェクトの「軌跡」からスプラインを生成します。しかしトレーサは、MoGraphオブジェクトとしては例外的に、クローンを作りません。したがって、イフェクタを適用することもできません。

図601-17

 トレーサは、他のMoGraphオブジェクトやパーティクルと組み合わせて使うための補助的なオブジェクトですが、とても面白い効果を出すことができます。


2. この他に、MoGraphには専用の「シェーダ」と「ノード」があります。これらについては、別の講座で詳しく説明します。

 


Previous Top Next