基礎知識
最初のレッスンでは、簡単な 2D ダイナミック流体 を作成しました。3D 流体は、定義するために 2D 流体より余分なデータを必要とするので、流体が非 常に複雑になる場合があります。この特別なデータ があるために、シミュレーションの全ステップでよ り多くの計算(解析)を実行しなければならなくな り、ダイナミックシミュレーションの速度がかな り遅くなる可能性があります。よりメモリ消費の少 ないエフェクトを得るには、データ量が少ない 2D 流体を使うか、3D の非ダイナミックエフェクトを 作成します。
非ダイナミック流体エフェクトでは、流体プロパティの値が Maya 内部で定義済みで、時間が 経過しても変化しません。つまり、プロパティ値を再計算する必要がありません。流体の外観 は、割り当てられている特別な流体シェーダをテクスチャリングして作成します。このシェー ダは流体に組み込まれているので、パフォーマンスを向上させることができます。流体エフェ クトにモーションを追加したい場合は、テクスチャのアトリビュートをアニメート(キーフ レーミング)することができます。流体ダイナミクスの方程式を解く必要がないため、ダイナ ミック流体をレンダーするよりも、このタイプの流体をレンダーするほうがはるかに高速です。
このレッスンでは、3D の非ダイナミック流体を使用してクラウドの層を作成することにより、
非ダイナミック流体の作成方法の基本を学習します。次の方法について学習します。
• 定義済みグラディエントのコンテンツを使用して 3D 流体を作成する方法
• 組み込み流体シェーダを使用して流体のコンテンツにテクスチャを適用する方法 レッスンを開始する前に、「レッスンの準備」(56ページ)の手順を実行します。
3D 流体コンテナを作成する
3 | 流体エフェクト レッスン 2 > 3D 流体コンテナを作成する
流体コンテナは X、Y、Z の各方向が均一である必要はありません。実際、流体が大きいとレン ダーにかかる時間もそれだけかかるため、各方向をエフェクトの作成に必要なだけの大きさに する必要があります。クラウドの層は地上の上空に毛布のように浮かんでいるものなので、
キュービックではなく長方形のコンテナで済みます。
3D 流体コンテナを作成するには
1 流体エフェクト > 3D コンテナの作成 (Fluid Effects > Create 3D Container )を選択 します。
3D コンテナの作成オプション(Create 3D Container Options)ウィンドウが開きます。
2 コンテナのオプションを次のように設定し、適用して閉じる(Apply and Close)をクリッ クします。
• X 解像度(X Resolution): 50
• Y 解像度(Y Resolution): 5
• Z 解像度(Z Resolution): 60
• X サイズ(X Size): 50.0
• Y サイズ(Y Size): 5.0
• Z サイズ(Z Size): 60.0
解像度はボクセルで定義されます。解像度を高くするとディテールが細かくなりますが、
レンダリング時間が長くなります。コンテナのサイズは Maya に設定されている作業単位 で定義されます。流体のサイズによって各ボクセルのサイズが決まります。
原点を中心とする空の 3 次元の流体コンテナが作成されます。
ヒント ボクセルが、各軸に沿って均質な四角にするには、コンテナの解像度とサイズ を比例させるのがよい方法です。
レッスン 2 > コンテナに流体を追加する
次に、コンテナに流体を追加します。
コンテナに流体を追加する
流体を非ダイナミック流体にするには、時間が経過しても変化しない流体プロパティ値をコン テナに追加します。これを行うには、スタティックグリッドにこの値を追加する方法と、
Maya に用意されている定義済みグラディエントのリストから値のセットを選択する方法の 2
つがあります。このレッスンでは、後者の方法を使用します。
クラウドの層の場合、定義する必要があるプロパティは密度だけです。その他のプロパティは 通常、ダイナミックソルバを実行するときに使用されます。
コンテナに流体を追加するには
1 シーンビューをドリーして、コンテナ全体を表示します。
2 流体コンテナを選択した状態で、Maya の右側のパネルにアトリビュート エディタを表示 し、fluidShape1 タブをクリックします。
3 アトリビュートエディタのコンテンツの方法セクションで、次のように設定します。
• 密度: グラディエント(Density: Gradient)
• 密度のグラディエント: 定数(Density Gradient: Constant)
速度(Velocity)、温度(Temperature)、燃料(Fuel)の各プロパティをオフにします(こ
れらのプロパティは、このエフェクトでは使用しません)。
3 | 流体エフェクト
レッスン 2 > 流体のシェーダアトリビュートを定義する
密度のグラディエント(Density Gradient)を定数(Constant)に設定することで、コンテ ナ内のすべての密度値は同じ(1)になります。これらの値はスケールすることはできます が、それ以外の方法で変更することはできません。
流体のシェーダ アトリビュートを定義する
fluidShape にはシェーダが組み込まれており、カラーやテクスチャなどのアトリビュートを変 更して、流体に特定の外観を持たせることができます。次の手順では、コンテナ内の密度値に シェーダを適用しましょう。
流体のシェーダ アトリビュートを定義するには
1 アトリビュートエディタのシェーディング(Shading)セクションを開きます。
2 カラー(Color)サブセクションで、入力カラー(Color Input)を密度(Density)に変更します。
コンテナ内の密度値が、カラー サンプルで定義されたカラーになります。このカラーを白 のままにして、クラウドの外観を白にします。
3 不透明度(Opacity)サブセクションで、入力不透明度(Opacity Input)が密度に設定され ていることを確認します。
不透明度は、密度が光を遮る程度を表します。不透明度については、このレッスンの後半 に説明します。
流体コンテナのコンテンツにテクスチャリングを適用 する
ここまでで、コンテナは白い無地の密度で塗りつぶされた状態になっています。クラウドのエ フェクトを作成するには、一部の領域が透明で一部の領域が不透明になるように、密度にテク スチャを適用します。
レッスン 2 > 流体コンテナのコンテンツにテクスチャリングを適用する
流体の密度にテクスチャ マッピングするには
1 流体のテクスチャのエフェクトをレンダーせずに確認できるよう、シーンビューメニュー でシェーディング > ハードウェア テクスチャリング(Shading > Hardware Texturing)を 選択して、ハードウェア テクスチャリングの表示をオンにします。
2 アトリビュートエディタのテクスチャ(Textures)セクションを開きます。
3 テクスチャ不透明度(Texture Opacity)をオンにして、不透明度値にカレントのテクスチャ を適用します。カレントのテクスチャは Perlin ノイズ(Perlin Noise)で、テクスチャのタ
イプ(Texture Type)で定義されています。
密度が少しまだらな外観になり、不透明な領域と透明な領域ができています。このテクス
チャは、Maya に組み込まれている 3D ソリッドフラクタルテクスチャで使用される標準
の 3D ノイズテクスチャです。
4 綿状のクラウドのようなエフェクトを出すには、テクスチャのタイプを Billow に変更し ます。
Billow テクスチャはコンピュータの計算量が非常に大きいので、ほかのタイプのテクス
チャよりも処理速度が遅くなります。
3 | 流体エフェクト
レッスン 2 > 流体コンテナのコンテンツにテクスチャリングを適用する
5 次のテクスチャ アトリビュートを設定して、テクスチャの外観を変更します。
• 振幅(Amplitude): 0.5
• デプスの最大値(Depth Max): 4
振幅を小さくすると、密度が低い領域はさらに透明になり、密度が高い領域はさらに不透 明になります。
デプスの最大値を大きくすると、ディテールが追加されますが、レンダリング時間が長く なります。
6 テクスチャのスケール(Texture Scale)の X、Y、Z の各コンポーネントを 2、1、1 に変 更して、X 方向のテクスチャを伸長します。
7 Billow テクスチャの次のアトリビュートを変更して、「むくむくしたクラウド」を、もっと
まばらで大きさがばらばらの斑点状のクラウドにします。
• Billow 密度: 0.6
• まだらさ(Spottyness): 2.0
• サイズのランダム偏差(Size Rand): 0.40
レッスン 2 > 流体コンテナのコンテンツにテクスチャリングを適用する
8 コンテナ内の密度が非常に高い領域の不透明度が低くなり、密度が非常に低い領域が完全 に透明になり、さらに、完全に透明な領域と不透明な領域の間の変化がもっとはっきりす るように、不透明を変更します。
アトリビュートエディタで、シェーディングセクションに移動します。不透明度サブセク ションの不透明度グラフを確認します。このグラフは、不透明度と密度の値(入力不透明 度値)の間のリレーションシップを表します。
不透明度値の範囲は、一番下の 0(完全に透明で不透明度ゼロ)から一番上の 1(完全に 不透明)までです。
密度値の範囲は、左端の 0(密度ゼロ)から右端の 1(高密度)までです。
上記のリニア グラフが示すように、密度値 0、不透明度値 0 のところでは密度は完全に透 明に、密度値 0.5、不透明度値 0.5 のところでは密度は部分的に不透明に、密度値 1、不 透明度値 1 のところでは密度は完全に不透明になります。
• 不透明度グラフの 1 番目の点をクリックして、位置マーカを選択します。位置マーカは、
グラフ上の左右の位置(入力不透明度値)をマークします。位置が選択されているときは、
ドットのアウトラインが白色になります。
不透明度値
0 1
入力不透明度値
(密度)
0 1