ビューポートに表示するパーティクルのカラーを設定できます。レンダリングされたパーティクルでは、Render Treeでシェーダを設定しない限り、これらのパーティクルカラー値は使用されません(「Render Tree の ICE パーティクル カラーを使用する」を参照)。パーティクルシェーダの詳細については、「ICEパーティクルのシェーディング」を参照してください。
パーティクルカラーは、シンプルなグラディエントを使用したり、パーティクルカラー値をランダマイズしたり乱流化するなど、さまざまな方法で変化させることができます。
テクスチャマップのイメージや頂点カラーマップのカラーを使用して、パーティクルのカラーを設定することもできます。
また、[ツール]タブの[Color(カラー)]グループには、カラーコンバータのさまざまなタイプなど、数多くのノードが用意されています。
パーティクルのカラーを定義するためのパーティクルの属性には、[Init_Color]と[Color(カラー)]の2つがあります。これらの属性は、このセクションで説明されているように複数のコンパウンドで使用されますが、ICE パーティクル属性を使用するで説明されているように、[Get Data]および[Set Data]ノードで指定してICEツリーで単独で使用することもできます。
属性全般の詳細については、ICE 属性[ICE リファレンス]を参照してください。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Emit]コンパウンドのプロパティエディタを開き、標準のカラースライダーを使用して[Color(カラー)]を設定します。
カラーツールの使用の詳細については、カラー プロパティを定義する[インタフェースおよびツール]を参照してください。
時間経過とともにパーティクルカラーを変化させる(カラーシフト)
グラディエントを使用して、パーティクルのカラーが経過時間ともに変化するように設定するには、[Modify Particle Color](Modify Particle)コンパウンドを使用します。このコンパウンドは、さまざまな方法でパーティクルカラーの特定情報(RGBやHLSコンポーネントなど)を変更します。パーティクルの放出時のカラーまたは現在のカラーを変更することができます。
現在のカラーを変更することにより、パーティクルの経過時間、寿命までの経過時間の割合、シミュレーションの長さなど、さまざまな係数に基づいてカラーシフトを作成することができます。パーティクルカラー変更のトリガーとして寿命を使用する方法については、「寿命に達したパーティクルのカラーの変更」を参照してください。
パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。
[ICE]ツールバーから[パーティクル](Particles) [エミッション後](After Emission) [カラーの変更](Modify Color)コマンドを選択します。
このコマンドは[Modify Particle Color]コンパウンドをICEツリーに追加し、[Simulation Root]コンパウンドの[Execute]ポートに接続します。
[Execute]出力を、[Slide on Surface]、[Bounce on Surface]、[Stick to Surface]などの他のコンパウンドの任意の実行ポートに接続することもできます。たとえば、パーティクルがサーフェイスの上をスライドするときにパーティクルのカラーを変化させることができます。
また、その[Execute]出力を[State]コンパウンドの任意の[Execute]ポートに接続し、特定の条件(特定のオブジェクトに近づいた場合など)に一致したときにパーティクルカラーを変更させることもできます。
[Modify Particle Color(パーティクル カラーの変更)]プロパティエディタで、時間経過とともにパーティクルカラーがいかに変化するかを制御するためのグラディエントを設定します。
指定した寿命に達したときに、パーティクルのカラーを変更することができます。
パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。
[ICE]ツールバーから[パーティクル](Particles) [エミッション後](After Emission) [時系列制限でのカラーの変更](Modify Color at Age Limit)コマンドを選択します。
[Set Particle Age Limit(パーティクル時系列制限の設定)]コンパウンドをICEツリーに追加し、放出コンパウンドの[Execute on Emit]ポートに接続します。
[Modify Particle Color(パーティクル カラーの変更)]コンパウンドをICEツリーに追加し、[Simulation Root]コンパウンドの[Execute]ポートに接続します。
[Get Particle Age Limit(パーティクル時系列制限の取得)]コンパウンドをICEツリーに追加し、[Modify Particle Color]コンパウンドの[End Value]ポートに接続します。
[Set Particle Age Limit(パーティクル時系列制限の設定)]プロパティエディタで、パーティクルの寿命を設定します。
[Modify Particle Color(パーティクル カラーの変更)]プロパティエディタで、時間経過とともにパーティクルカラーがいかに変化するかを制御するグラディエントでカラーを設定します。
[タスク]>[Particles]タブには、カラー値にランダムさや乱流(ノイズ)を追加して、パーティクルが常に同じカラーで放出されないようにするいくつかのコンパウンドが用意されています。これによって、特定のタイプのエフェクトで、パーティクルがより自然に見えるようになります。
同じパーティクルのカラーにランダムな値を使用した場合と乱流を使用した場合の違いに注意してください。乱流は時間や空間の移動に伴いフィールドにノイズを作成しますが、ランダマイズはシミュレーションの各フレームで、ある値の範囲から値をランダムに生成します。
左:[Randomize Color by Gradient]コンパウンドの影響を受けているパーティクル。
右:[Turbulize Color Gradient]コンパウンドの影響を受けている同じパーティクル。この場合、完全にランダムな場合よりも、パーティクルカラーが「フィールド」として変化しています。
[Randomize Color]コンパウンドは、パーティクルカラーのすべてまたは特定のチャンネルにランダム値を追加して、さまざまなカラーの範囲で各パーティクルが放出されるようにすることができます。さまざまなカラー値の範囲を決定するときに基点となる平均値を設定します。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
このコンパウンドの[Random Color]出力を任意のカラーポート([Emit]コンパウンドの[Color]ポートなど)に接続します。
[Random Color]プロパティエディタを開き、プロパティを設定します。ランダマイズしたいカラーチャンネル(RGB、赤、緑、青、色相、彩度、アルファ)、速度、およびカラー値の変位を決定するときに基点となる平均値を設定できます。
パラメータの詳細については、「Randomize Color(カラーのランダマイズ)」(「ICE リファレンス」)を参照してください。
[Randomize Color by Gradient]コンパウンドでは、グラディエントを使用して、放出時にパーティクルにカラーをランダムに分配します。
グラディエントを使用してパーティクルカラーをランダマイズするには
パーティクル放出を作成します。「基本的なパーティクル放出の作成」を参照してください。
[ICE]ツールバーから[パーティクル](Particles) [エミッション時](On Emission) [Randomize Color by Gradient]コマンドを選択します。
このコマンドは[Randomize Color by Gradient]コンパウンドをICEツリーに追加し、放出コンパウンドの[Color]ポートに接続します。
[Randomize Color(カラーのランダマイズ)]プロパティエディタで、カラーをグラディエントで設定します。パーティクルカラーは、放出時にこのグラディエントからランダムに取得されます。
一般的なグラディエントコントロールの詳細については、「[Particle Gradient]シェーダ」を参照してください。
[Turbulize Color by Gradient]コンパウンドで、グラディエントを使用して、放出時にパーティクルカラーに乱流を追加します。
パーティクル放出を作成します。「さまざまなICEパーティクル放出の設定」を参照してください。
[Modifiers]グループの[Turbulize Color by Gradient]コンパウンドを選択し、グラフエリアにドラッグします。
このコンパウンドの[Out]出力を任意のカラーポート([Emit]コンパウンドの[Color]ポートなど)に接続します。
[Turbulize Color by Gradient]プロパティエディタを開き、グラディエントのカラーを設定します。パーティクルカラーは、設定した乱流スケール、アニメーション速度、複雑さ(フラクタルタイプ)などの値に応じて、放出時にこのグラディエントからランダムに取得されます。
パラメータの詳細については、「Turbulize Color by Gradient(グラディエントによるカラーの乱流)」(「ICE リファレンス」)を参照してください。
一般的なグラディエントコントロールの詳細については、「[Particle Gradient]シェーダ」を参照してください。