ウェイト マップ、テクスチャ マップ、ボリューム内、ヌルまたはオブジェクト上の UV ロケーションからの距離、オブジェクトの交差、パーティクル ID など、多くのさまざまなフィルタ コンパウンドを使用して、パーティクルが放出される場所をコントロールできます。
どのフィルタ コンパウンドでも、まずパーティクルが生成されてから、各コンパウンドで設定されたさまざまな条件に応じて一部のパーティクルが削除されます。
ウェイト マップを使用すると、特にグラディエントを使用してパーティクルを放出する場合に、エミッタ オブジェクトの特定の領域からパーティクルを放出できます。パーティクルは、ウェイト マップの値が 0 より大きい場合のみ放出されます。
エミッタのジオメトリの解像度によって、ウェイト マップの精度が決まります(解像度が上がると設定可能な精度も上がります)。
ウェイト マップの詳細については、「パラメータ マップ」を参照してください。
(左)黒い領域の値が 0 に設定されているウェイト マップ。
(右)パーティクルは、0 以外のすべての領域から放出されます。
パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。
[ICE]ツールバーから[パーティクル](Particles) [エミッション時](On Emission) [ウェイトマップからの放出](Emit from Weight Map)コマンドを選択します。
ウェイト マップがすでにエミッタ オブジェクトに存在する場合には、表示されるエクスプローラからそれを選択するようにメッセージが表示されます。
エミッタ オブジェクトにウェイト マップがない場合には、1 つが作成され、[ウェイト マップ](Weight Map)プロパティ エディタが開きます。必要に応じて、ウェイト マップに新しい名前を指定することができます。
[W]キーを押してペイント ブラシ ツールをアクティブにし、ウェイト マップ上にペイントします。[Ctrl]+[W]キーを押して[ブラシプロパティ]を開けば、ペイント ブラシ ツールを編集できます。
ウェイト マップおよびそのウェイト属性リファレンスが自動的に[Emit from Geometry(ジオメトリからの放出)]コンパウンドの[Emission Filter Parameters(放出フィルタ パラメータ)]に追加されます。以下の図のテキスト ボックスにあるような文字列が指定されます(ただし、Weight_Map ではなくユーザ独自のウェイト マップ名が使用されます)。
[Filter by Texture Map]コンパウンドを使用して、エミッタ オブジェクトにテクスチャ マップを作成し、そのテクスチャ マップを使用してパーティクル放出を定義できます。このコンパウンドでは、テクスチャ マップの輝度(明るさ)の値(イメージまたはシーケンスを使用)に基づいて、放出されるパーティクルの数を減らします。テクスチャ マップの領域が暗いほど、放出がブロックされるパーティクルの数が多くなります。
(左)コントラスト カラーのテクスチャ マップ イメージ。黒い領域には 0 の値が設定されています。
(右)パーティクルは、0 以外のすべての領域から放出されます。
これにより、グラディエントまたはイメージ パターン(特にアニメートされたイメージ シーケンス)を使用してパーティクルを放出する場合などに、エミッタ オブジェクトの特定の領域からパーティクルを放出できるようになります。ウェイト マップを使用している場合と異なり、テクスチャ マップが適用されたジオメトリの解像度は無関係です。つまり、解像度に関わらず、より詳細なパーティクル放出が可能になります。
テクスチャ マップは、イメージ ファイルまたはシーケンス、および UV 座標のセットから構成されます。テクスチャ マップは、通常のテクスチャと似ていますが、サーフェイス カラーでなくパラメータをコントロールするために使用されます。テクスチャ マップを作成するには、テクスチャ プロジェクション方法を選択し、イメージ ファイルをリンクさせます(すべてテクスチャ マップ プロパティで行います)。
テクスチャマップの詳細については、テクスチャ マップを参照してください。
テクスチャ マップを使用してパーティクル放出をフィルタするには
パーティクル エミッタにするオブジェクトを選択し、任意のツールバーから[取得](Get) [プロパティ](Property) [テクスチャマップ](Texture Map)を選択します。テクスチャ マップが適用され、プロパティ エディタが開きます。
エミッタ オブジェクトのジオメトリに応じてテクスチャ プロジェクション方法を選択し、そこにリンクするイメージまたはシーケンスを選択します。テクスチャ プロジェクションは、イメージのカラーをジオメトリにマッピングします。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Texture Map]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。
[Filter by Texture Map]コンパウンドのプロパティ エディタで[Explorer]ボタンを使用して、使用するエミッタのテクスチャ マップを選択します。
[反転](Invert)オプションを選択して、反転テクスチャ マップ値を使用して、テクスチャ マップ値が 0 のときにのみパーティクルが放出されるようにすることもできます。
[Filter by Object Intersection]コンパウンドは、他のオブジェクトと交差するエミッタに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルは交差エリア内でのみ放出されます。
最適な結果が得られるように、交差するオブジェクトがポリゴン メッシュや NURB サーフェイスなどのサーフェイス オブジェクトであることを確認してください。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Object Intersection]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。
1 つまたは複数のオブジェクトを選択し、Explorer から ICE ツリーにドラッグしてそのオブジェクトのノードを作成します。これらは、パーティクルを放出するためにエミッタと交差するオブジェクトになります。
各オブジェクトの[Value]出力を[Filter by Object Intersection]コンパウンドの[Filter Geometry]ポートに接続します。
[Filter by Object Intersection]コンパウンドのプロパティ エディタで、[距離のしきい値]を設定できます。この値は、パーティクルを放出するオブジェクトの交差エリア周囲の最大距離(Softimage 単位)になります。
[反転](Invert)オプションを選択してパーティクル放出を反転させ、オブジェクトの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。
オブジェクトのボリュームに基づいてパーティクルをフィルタする
[Filter By Volume]コンパウンドは、オブジェクトのボリューム範囲内にあるかどうかに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルを放出するためには、ボリューム オブジェクトをエミッタと交差させる必要があります。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Volume]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。
ボリュームのあるオブジェクト(ポリゴン メッシュや NURBS サーフェイスなど)を選択し、Explorer から ICE ツリーにドラッグしてそのオブジェクトのノードを作成します。
オブジェクトの[Value]出力を[Filter by Volume]コンパウンドの[Volume]ポートに接続します。
[Filter by Volume]コンパウンドのプロパティ エディタで、減衰プロファイル カーブおよび距離の値を設定して、パーティクル エミッションのフィルタ方法を指定します。
[反転](Invert)オプションを選択してグラフを反転させ、ボリュームの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。
パラメータの詳細については、「Filter by Volume(ボリュームによるフィルタ)」(「ICE リファレンス」)を参照してください。
[Filter By Null]コンパウンドは、ヌルのアイコン シェイプ内にあるかどうかに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルを放出するためには、ヌルをエミッタと交差させる必要があります。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Null]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。
ヌルを作成し、プロパティ エディタを開きます。[ボックス]、[ピラミッド]、[矢印円]など、ボリュームを持つアイコン シェイプを選択します。
ヌルの[Out Name]出力を[Filter by Null]コンパウンドの[Null Name]ポートに接続します。
[Filter by Null]コンパウンドのプロパティ エディタで、減衰プロファイル カーブを設定して、距離に応じたパーティクル エミッションのフィルタ方法を指定します。
[Invert Filter]オプションを選択してグラフを反転させ、ヌルの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。
[Filter By Distance to UV Location]コンパウンドは、NURBS サーフェイスまたはカーブ オブジェクトの特定の UV 位置からエミッタまでの距離に基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルは、このオブジェクト上の位置がパーティクル エミッタ オブジェクトの特定の距離内にある場合にのみ放出されます。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Distance to UV Location]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。
NURBS サーフェイスまたはカーブ オブジェクトを選択し、Explorer から ICE ツリーにドラッグしてノードを作成します。
NURBS サーフェイスまたはカーブの[Value]出力を[Filter by Distance to UV Location]コンパウンドの[Geometry]ポートに接続します。
[Filter by Distance to UV Location]コンパウンドのプロパティ エディタで、使用するオブジェクト上の UV 位置を選択し、[距離のしきい値]を設定します。この値は、パーティクルが放出される、この NURBS カーブまたはサーフェイスからパーティクル エミッタまでの最大距離(Softimage 単位)になります。
パーティクルには発生時に、シミュレーション全体で他の ID と重複することのない固有の識別番号(ID 属性)が指定されます。この識別番号は、トラブルシューティングやスクリプトなどさまざまな作業でパーティクルの識別に使用できます。
[Filter by Particle IDs]コンパウンドでは、パーティクルの ID 属性に基づいて、放出されるパーティクルの数を減らします。このコンパウンドで定義されている ID とそのパーティクルの ID が一致する場合のみ、パーティクルが放出されます。
ID の詳細については、「ID とインデックスを操作する」(「ICE の基本」)を参照してください。
ID 番号が 3、5、7、10 と一致するパーティクルのみが放出されるように、パーティクルがフィルタされています。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emission Control]グループの[Filter by Particle ID]コンパウンドを選択し、グラフ エリアにドラッグします。
このコンパウンドの[Execute on Emit]出力は、[Emit]コンパウンドの[Execute on Emit]ポートに接続します。
[Filter by Particle ID]コンパウンドのプロパティ エディタで、フィルタするパーティクルの ID 値を入力します。
[反転](Invert)オプションを選択すると、このコンパウンドで定義されているパーティクル ID に一致しない場合のみパーティクルが放出されるようになります。
パーティクル ID ポートを追加するには、コンパウンドのパーティクル ID ポートを右クリックして[後にポートを挿入](Insert Port After)を選択します。この操作によって、パーティクル ID ポートを必要に応じていくつでも作成できます。