リプリケータのサイズをコントロールするには(後編)
https://www.youtube.com/watch?v=3yKKuwZR-Is
前回はリプリケータのポイントソースがメッシュの場合に、リプリケータのサイズをパーティクルサイズマップを使ってコントロールする方法をご紹介しましたが、今回はポイントソースがSurface Particle Generatorの場合にリプリケータのサイズをコントロールする方法をご紹介します。
サンプルにはカバのメッシュと、石を一つ用意しています。この石でまずはカバの全身を覆うリプリケータのポイントソースを作ってみましょう。メッシュの表面を覆うパーティクルが必要なときには、Surface Particle Generatorを使います。このアイテムはソースサーフェイスとして指定したメッシュの表面上に、パーティクルを自動で配置します。配置されたパーティクルは黄色でハイライト表示されています。
ではリプリケータを追加し、原型となるアイテムに石を、そしてポイントソースにSurface Particle Generatorを指定します。そうすると、カバの全身を石が覆うようになります。
ではこれからリプリケータのサイズを変えることで、石が全身を覆うのではなく、一部のみを覆うように設定してみましょう。
アイテムリストからSurface Particle Generatorを選択し、右クリックからコンテキストメニュー > シェーディング > アイテムマスクの作成を選択します。シェーダツリーに移ってみると、作ったアイテムマスクのマテリアルグループはFXの中に作成されています。これによりこれから施すパーティクルのリサイズがSurface Particle Generatorに対してのみ作用するようになります。グループを選択し、レイヤー追加 > 処理 > Gradientを追加し、エフェクトをパーティクルサイズへと変更します。
Gradientテクスチャの設定で値のグラディエントを設定し、入力パラメータをロケータまでの距離に変更します。ここでいうロケータとは、Gradientテクスチャをコントロールするテクスチャロケータのことですので、テクスチャロケータから一定の位置にあるパーティクルのサイズが変化することになります。
テクスチャロケータは通常のアイテムですので、このアイテムを移動させることにより、カバの表面を覆う石の位置が変わってきます。
このようにSurface Particle Generatorの場合であれば、FXを使うことで、パーティクルのサイズをテクスチャなどでコントロールすることが可能になります。