ICE パーティクル放出をフィルタする

 
 
 

いくつかのフィルタ パラメータまたはコンパウンドを使用するだけで、オブジェクトの特定の領域からパーティクルを放出させることができます。

各種の[放出](Emit)コンパウンドまたは[Generate Sample Set]ノードの[放出フィルタ パラメータ](Emission Filter Parameters)を使用することで、ポリゴンまたはポイントのクラスタへのパーティクルの放出を、ウェイト マップのウェイトで定義された領域に制限できます。

[フィルタ](Filter)コンパウンドを使用することで、パーティクルをテクスチャ マップから、あるいはボリューム内や、オブジェクト上のヌルまたは UV 位置から一定の距離内から、またはオブジェクトの交差部分や特定のパーティクル ID から放出させることができます。どのフィルタ コンパウンドでも、まずパーティクルが生成されてから、各コンパウンドで設定されたさまざまな条件に応じて一部のパーティクルが削除されます。

ポリゴンまたはポイント クラスタに基づいてパーティクルをフィルタリングする

シーン オブジェクト上のポリゴンまたはポイントのクラスタからパーティクルを放出することができます。

オブジェクトのポリゴンまたはポイントのクラスタからパーティクルを放出するには

  1. パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。
  2. [コンポーネント選択フィルタ](Component Selection Filter)から[ポリゴン](Polygon)または[ポイント](Point)をクリックし、パーティクルを放出するポリゴンまたはポイントを選択します。

    コンポーネントの選択とさまざまなコンポーネント選択モードに関する詳細については、「コンポーネントを選択する」を参照してください。

  3. [編集](Edit)パネルから[編集](Edit) [クラスタの作成](Create Cluster)を選択して、選択したポリゴンまたはポイントのクラスタを作成します。「クラスタ」を参照してください。

    または、[選択フィルタの編集](Edit Selection Filter)で[クラスタ](Cluster)ボタンをクリックします。

  4. [エクスプローラ](Explorer)を開き、ポイント クラウド ツリーをクリックします。
  5. ICE Tree を開き、[ジオメトリから放出](Emit from Geometry)コンパウンドをダブルクリックします。
  6. [Emission Filter Parameters](放出フィルタ パラメータ)ペインで、[エクスプローラ](Explorer)ボタンをクリックしてリファレンスを選択します。
  7. [エクスプローラ](Explorer)から、 IsElement をリファレンスとして[ポリゴン メッシュ](Polygon Mesh) [クラスタ](Clusters) [ポリゴン](Polygon)フォルダから選択します。

    文字列 cls.[polygon].IsElement が[リファレンス](Reference)テキスト ボックスに表示されます。

ウェイト マップに基づいてパーティクルをフィルタする

ウェイト マップを使用すると、特にグラディエントを使用してパーティクルを放出する場合に、エミッタ オブジェクトの特定の領域からパーティクルを放出できます。パーティクルは、ウェイト マップの値が 0 より大きい場合のみ放出されます。

エミッタのジオメトリの解像度によって、ウェイト マップの精度が決まります(解像度が上がると設定可能な精度も上がります)。

ウェイト マップの詳細については、「パラメータ マップ」を参照してください。

   

(左)黒い領域の値が 0 に設定されているウェイト マップ。

(右)パーティクルは、0 以外のすべての領域から放出されます。

ウェイト マップに従ってパーティクルを放出するには

  1. パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。

  2. [ICE]ツールバーから[パーティクル](Particles) [エミッション時](On Emission) [ウェイトマップからの放出](Emit from Weight Map)コマンドを選択します。

    ウェイト マップがすでにエミッタ オブジェクトに存在する場合には、表示されるエクスプローラからそれを選択するようにメッセージが表示されます。

    エミッタ オブジェクトにウェイト マップがない場合は、[ICE]ツールバーから[プロパティ](Property) [ウェイト マップ](Weight Map)コマンドを選択して作成します。必要に応じて、ウェイト マップに新しい名前を指定することができます。

    ウェイト マップは、エミッタ オブジェクトの[Clusters]>[WeightMapCls]ノードの下にあります。

  3. [W]キーを押してペイント ブラシ ツールをアクティブにし、ウェイト マップ上にペイントします。[Ctrl]+[W]キーを押して[ブラシプロパティ]を開けば、ペイント ブラシ ツールを編集できます。

  4. ウェイト マップおよびそのウェイト属性リファレンスが自動的に[Emit from Geometry(ジオメトリからの放出)]コンパウンドの[Emission Filter Parameters(放出フィルタ パラメータ)]に追加されます。以下の図のテキスト ボックスにあるような文字列が指定されます(ただし、Weight_Map ではなくユーザ独自のウェイト マップ名が使用されます)。

注:ウェイト マップを使用してパーティクルをフィルタするには、Filter by Weight Map(ウェイトマップによるフィルタ)コンパウンドを使用することもできます。

ウェイト マップに従ってパーティクルを放出するための別のワークフロー

  1. パーティクル放出を作成します。

  2. エミッタ オブジェクトに既にウェイト マップが存在する場合は、[エクスプローラ](Explorer) [クラスタ](Clusters) [WeightMapCls]ノードからそのウェイト マップを選択します。

    エミッタ オブジェクトにウェイト マップがない場合は、[ICE]ツールバーから[プロパティ](Property) [ウェイト マップ](Weight Map)コマンドを選択して作成します。必要に応じて、ウェイト マップに新しい名前を指定することができます。

  3. [W]キーを押してペイント ブラシ ツールをアクティブにし、ウェイト マップ上にペイントします。

  4. [エクスプローラ](Explorer)から、ポイント クラウド ツリーをクリックします。
  5. ICE Tree を開き、[ジオメトリから放出](Emit from Geometry)コンパウンドをダブルクリックします。
  6. [Emission Filter Parameters](放出フィルタ パラメータ)ペインで、[エクスプローラ](Explorer)ボタンをクリックしてリファレンスを選択します。
  7. [エクスプローラ](Explorer)から、 Weights をリファレンスとして[ポリゴン メッシュ](Polygon Mesh) [クラスタ](Clusters) [WeightMapCls] [Weight_Map]フォルダから選択します。

文字列 cls.WeightMapCls.Weight_Map.Weights が[リファレンス](Reference)テキスト ボックスに表示されます。

テクスチャ マップに基づいてパーティクルをフィルタする

[Filter by Texture Map]コンパウンドを使用して、エミッタ オブジェクトにテクスチャ マップを作成し、そのテクスチャ マップを使用してパーティクル放出を定義できます。このコンパウンドでは、テクスチャ マップの輝度(明るさ)の値(イメージまたはシーケンスを使用)に基づいて、放出されるパーティクルの数を減らします。テクスチャ マップの領域が暗いほど、放出がブロックされるパーティクルの数が多くなります。

   

(左)コントラスト カラーのテクスチャ マップ イメージ。黒い領域には 0 の値が設定されています。

(右)パーティクルは、0 以外のすべての領域から放出されます。

これにより、グラディエントまたはイメージ パターン(特にアニメートされたイメージ シーケンス)を使用してパーティクルを放出する場合などに、エミッタ オブジェクトの特定の領域からパーティクルを放出できるようになります。ウェイト マップを使用している場合と異なり、テクスチャ マップが適用されたジオメトリの解像度は無関係です。つまり、解像度に関わらず、より詳細なパーティクル放出が可能になります。

テクスチャ マップは、イメージ ファイルまたはシーケンス、および UV 座標のセットから構成されます。テクスチャ マップは、通常のテクスチャと似ていますが、サーフェイス カラーでなくパラメータをコントロールするために使用されます。テクスチャ マップを作成するには、テクスチャ プロジェクション方法を選択し、イメージ ファイルをリンクさせます(すべてテクスチャ マップ プロパティで行います)。

テクスチャマップの詳細については、テクスチャ マップを参照してください。

ヒント:パーティクルをテクスチャ マップのカラーで表示するには、「パーティクル カラーの設定でのテクスチャ マップの使用」を参照してください。

テクスチャ マップを使用してパーティクル放出をフィルタするには

  1. パーティクル エミッタにするオブジェクトを選択し、任意のツールバーから[取得](Get) [プロパティ](Property) [テクスチャマップ](Texture Map)を選択します。テクスチャ マップが適用され、プロパティ エディタが開きます。

  2. エミッタ オブジェクトのジオメトリに応じてテクスチャ プロジェクション方法を選択し、そこにリンクするイメージまたはシーケンスを選択します。テクスチャ プロジェクションは、イメージのカラーをジオメトリにマッピングします。

  3. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  4. ICE Tree を開き、左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  5. [Emission Control]グループの[Filter by Texture Map]コンパウンドを選択し、グラフ エリアにドラッグします。

  6. このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。

  7. [Filter by Texture Map]コンパウンドのプロパティ エディタで[Explorer]ボタンを使用して、使用するエミッタのテクスチャ マップを選択します。

    [反転](Invert)オプションを選択して、反転テクスチャ マップ値を使用して、テクスチャ マップ値が 0 のときにのみパーティクルが放出されるようにすることもできます。

オブジェクトの交差に基づいてパーティクルをフィルタする

[Filter by Object Intersection]コンパウンドは、他のオブジェクトと交差するエミッタに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルは交差エリア内でのみ放出されます。

最適な結果が得られるように、交差するオブジェクトがポリゴン メッシュや NURB サーフェイスなどのサーフェイス オブジェクトであることを確認してください。

  1. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  2. ICE Tree 左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  3. [Emission Control]グループの[Filter by Object Intersection]コンパウンドを選択し、グラフ エリアにドラッグします。

  4. このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。

  5. 1 つまたは複数のオブジェクトを選択し、Explorer から ICE Tree にドラッグしてそのオブジェクトのノードを作成します。これらは、パーティクルを放出するためにエミッタと交差するオブジェクトになります。

  6. 各オブジェクトの[Value]出力を[Filter by Object Intersection]コンパウンドの[Filter Geometry]ポートに接続します。

  7. [Filter by Object Intersection]コンパウンドのプロパティ エディタで、[距離のしきい値]を設定できます。この値は、パーティクルを放出するオブジェクトの交差エリア周囲の最大距離(Softimage 単位)になります。

    [反転](Invert)オプションを選択してパーティクル放出を反転させ、オブジェクトの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。

オブジェクトのボリュームに基づいてパーティクルをフィルタする

[Filter By Volume]コンパウンドは、オブジェクトのボリューム範囲内にあるかどうかに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルを放出するためには、ボリューム オブジェクトをエミッタと交差させる必要があります。

  1. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  2. ICE Tree 左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  3. [Emission Control]グループの[Filter by Volume]コンパウンドを選択し、グラフ エリアにドラッグします。

  4. このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。

  5. ボリュームのあるオブジェクト(ポリゴン メッシュや NURBS サーフェイスなど)を選択し、Explorer から ICE Tree にドラッグしてそのオブジェクトのノードを作成します。

    このオブジェクトはパーティクルを放出するポイントでエミッタと交差する必要があります。

  6. オブジェクトの[Value]出力を[Filter by Volume]コンパウンドの[Volume]ポートに接続します。

  7. [Filter by Volume]コンパウンドのプロパティ エディタで、減衰プロファイル カーブおよび距離の値を設定して、パーティクル エミッションのフィルタ方法を指定します。

    [反転](Invert)オプションを選択してグラフを反転させ、ボリュームの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。

    パラメータの詳細については、「Filter by Volume(ボリュームによるフィルタ)」(「ICE Reference(ICE リファレンス)」)を参照してください。

ヌル オブジェクトに基づいてパーティクルをフィルタする

[Filter By Null]コンパウンドは、ヌルのアイコン シェイプ内にあるかどうかに基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルを放出するためには、ヌルをエミッタと交差させる必要があります。

  1. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  2. ICE Tree 左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  3. [Emission Control]グループの[Filter by Null]コンパウンドを選択し、グラフ エリアにドラッグします。

  4. このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。

  5. ヌルを作成し、プロパティ エディタを開きます。[ボックス]、[ピラミッド]、[矢印円]など、ボリュームを持つアイコン シェイプを選択します。

    ヌルはパーティクルを放出するポイントでエミッタと交差する必要があります。

  6. ヌルを選択し、Explorer から ICE Tree にドラッグしてそのヌルのノードを作成します。

  7. ヌルの[Out Name]出力を[Filter by Null]コンパウンドの[Null Name]ポートに接続します。

  8. [Filter by Null]コンパウンドのプロパティ エディタで、減衰プロファイル カーブを設定して、距離に応じたパーティクル エミッションのフィルタ方法を指定します。

    [Invert Filter]オプションを選択してグラフを反転させ、ヌルの交差エリア以外のエミッタからパーティクルが放出されるようにすることもできます。

UV 位置までの距離に基づいてパーティクルをフィルタする

[Filter By Distance to UV Location]コンパウンドは、NURBS サーフェイスまたはカーブ オブジェクトの特定の UV 位置からエミッタまでの距離に基づいて、放出されるパーティクルの数を減らします(フィルタします)。パーティクルは、このオブジェクト上の位置がパーティクル エミッタ オブジェクトの特定の距離内にある場合にのみ放出されます。

  1. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  2. ICE Tree 左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  3. [Emission Control]グループの[Filter by Distance to UV Location]コンパウンドを選択し、グラフ エリアにドラッグします。

  4. このコンパウンドの[Execute on Emit]出力を、[Emit]コンパウンドの[Execute on Emit]ポートまたは[ICETree]ノードのポートに接続します。後者の場合は、放出は各フレームで更新されます。

  5. NURBS サーフェイスまたはカーブ オブジェクトを選択し、Explorer から ICE Tree にドラッグしてノードを作成します。

  6. NURBS サーフェイスまたはカーブの[Value]出力を[Filter by Distance to UV Location]コンパウンドの[Geometry]ポートに接続します。

  7. [Filter by Distance to UV Location]コンパウンドのプロパティ エディタで、使用するオブジェクト上の UV 位置を選択し、[距離のしきい値]を設定します。この値は、パーティクルが放出される、この NURBS カーブまたはサーフェイスからパーティクル エミッタまでの最大距離(Softimage 単位)になります。

ID に基づいてパーティクルをフィルタする

パーティクルには発生時に、シミュレーション全体で他の ID と重複することのない固有の識別番号(ID 属性)が指定されます。この識別番号は、トラブルシューティングやスクリプトなどさまざまな作業でパーティクルの識別に使用できます。

[Filter by Particle IDs]コンパウンドでは、パーティクルの ID 属性に基づいて、放出されるパーティクルの数を減らします。このコンパウンドで定義されている ID とそのパーティクルの ID が一致する場合のみ、パーティクルが放出されます。

ID の詳細については、「ID とインデックスを操作する」(「ICE ガイド」)を参照してください。

ヒント:ビューポートでパーティクル ID 番号を表示する場合は、「パーティクル表示属性を作成する」を参照してください。

ID 番号が 3、5、7、10 と一致するパーティクルのみが放出されるように、パーティクルがフィルタされています。

  1. パーティクル放出を作成します。「さまざまなICE パーティクル放出の設定」を参照してください。

  2. ICE Tree 左側の Preset Manager で[タスク]>[パーティクル]タブをクリックします。

  3. [Emission Control]グループの[Filter by Particle ID]コンパウンドを選択し、グラフ エリアにドラッグします。

  4. このコンパウンドの[Execute on Emit]出力は、[Emit]コンパウンドの[Execute on Emit]ポートに接続します。

  5. [Filter by Particle ID]コンパウンドのプロパティ エディタで、フィルタするパーティクルの ID 値を入力します。

    [反転](Invert)オプションを選択すると、このコンパウンドで定義されているパーティクル ID に一致しない場合のみパーティクルが放出されるようになります。

  6. パーティクル ID ポートを追加するには、コンパウンドのパーティクル ID ポートを右クリックして[後にポートを挿入](Insert Port After)を選択します。この操作によって、パーティクル ID ポートを必要に応じていくつでも作成できます。