パスに沿って移動するパーティクルの色を変化させるには
https://www.youtube.com/watch?v=n33dl7_o0vk
今回はパスに沿って移動していくパーティクルが、色を変化させていく表現を解説していきます。
サンプルとなるシーンには、パーティクルが中を通る管のモデルと、その元となるカーブのパスが用意されています。この管のメッシュは、カーブをもとにプロシージャルモデリングで押し出して作られた形状となっています。ではまずこのパスに沿ってパーティクルを移動させるアニメーションを作ってみます。
カーブに沿ってパーティクルを移動させるにはまず、カーブの始点にパーティクルのソースを配置し、そこからカーブフォースを使って、パーティクルの移動をパスに沿わせるようにします。セットアップツールバーのパーティクルタブからラディアルエミッターを追加し、カーブの始点へと移動させます。
ラディアルエミッターの円錐の角度を調整し、初期速度や速度の広がりを調整します。そのままだとカーブの始点からただ放出するだけですので、カーブに沿わせるようにするために、カーブフォースを追加します。カーブフォースでは、どのカーブに沿うのかを指定する必要がありますので、カーブのメッシュを指定すると、パーティクルがカーブに沿うようになります。このパーティクルがカーブに沿って動く設定方法については、解説ビデオ「パスに沿ってパーティクルを動かすには」で詳しく解説していますので、そちらをご覧ください。パーティクルの動きがそろっていないようでしたら、Particle Simulationのステップの値を上げると、より演算精度が高くなります。
パーティクルの動きはできましたので、これに対してマテリアルを設定しましょう。パーティクル自体は単なる点群ですので、これをレンダリングして見える形にするため、ブロブを使います。アイテムリストのアイテム追加 > ボリューム > Blobを追加します。パーティクルソースにParticle Simulationを設定し、半径の値を調整します。ブロブはパーティクル同士がくっつくような表現が得意ですが、逆にひとつひとつが独立しているように表現したい場合には、サーフェイスレベルの値を100%に設定すると良いでしょう。
ではこのブロブに対してマテリアルを設定します。アイテムリストからブロブを選択し、右クリックでシェーディング > アイテムマスクの作成をクリックします。シェーダツリーからBlobのマテリアルに対して色を設定すると、パーティクルに対して色が反映されるようになりました。
ここで色に対するテクスチャを設定します。レイヤー追加 > 処理 > Constantを追加します。これは単色の色を設定するだけのテクスチャです。このConstantで移り変わる二つの色を表現したいので、Constantテクスチャを二つ用意し、前後の色、例えば赤と青を表現するようにします。
この二つの色の移り変わりを、フォールオフで実現させます。上側にある方のConstantのテクスチャロケータをスケマティックビューへと追加します。このテクスチャロケータをよく見てみると、フォールオフの入力がありますので、こちらを使います。今回カーブに沿ってフォールオフを使いたいので、追加 > Mesh Operations > ツールパイプ > フォールオフ > Curve Falloffを追加し、これをConstantのフォールオフへと接続します。Curve Falloffのカーブには、使用したパスを設定します。
あとはカーブフォールオフのプロパティであるグラディエントを調整します。色の切り替わりをはっきりとさせたい場合には、グラディエントのキーのタイプをステップにするとよいでしょう。今回はカーブに沿って動くパーティクルでしたので、Curve Falloffを使用しましたが、場所によって色を切り替えたい場合などは、リニアフォールオフを使うほうが良いかもしれません。シーンに応じて、この利用するフォールオフの種類は使い分けるようにしてください。