パーティクル サンプラ(Particle Sampler Info)ノードのアトリビュートは、以前のバージョンのパーティクル カラー マッパ、透明度マッパ、白熱光マッパ、および存在時間マッパのすべての機能を提供します。
パーティクル サンプラ ノード アトリビュートを設定するには
particleShape のアトリビュート エディタ(Attribute Editor)には、関連付けられた各パーティクル サンプラ ノードのタブが含まれています。アトリビュート エディタの 2 つのセクション、共通読み取り専用アトリビュート(Common Read-Only attributes)と読み取り専用スカラー アトリビュート(詳細)(More Read-Only Scalar Attributes)には、このノードがデフォルトで認識しているアトリビュートがリストされています。また、ユーザ定義のアトリビュートを使用することもできます。
パーティクル サンプラ(Particle Sampler Info) ノードの再利用
多くの場合、新しいパーティクル サンプラ(Particle Sampler Info)ノードを作成する必要があるのは、初めて特定のシェーディング ノードのアトリビュートをマップするときに限られます。後で別のアトリビュートをマップするときには、既存のパーティクル サンプラ ノードを使用することができます。
パーティクル サンプラ ノードを再使用することによって、ノードの散乱状態を避けられます。しかし、別の目的のために別のアトリビュート設定が必要な場合は、複数の パーティクル サンプラ ノードを使用することができます。
これらのアトリビュートのどれかを使用するには、同じ名前とタイプのアトリビュートを particleShape に追加する必要があります。
任意の名前のアトリビュートを追加して、それをパーティクル サンプラ ノードで使用することはできません。ただし、ユーザ定義アトリビュートのどれかの値を、エクスプレッションを使用して、パーティクル サンプラ ノードが認識するアトリビュートに指定することはできます。
たとえば、パーティクルが原点から離れるほどノイズが増えるようにしたいとします。このためには、シェーダのノイズをパーティクルの位置ベクトルの mag 関数としてアニメートします。
userScalar1PP = mag(position);
コネクション エディタ(左側から右側への場合)の左のカラムでユーザ定義スカラー 1 PP(User Scalar 1 PP) を選択し、右のカラムでノイズを選択します。閉じるボタンをクリックします。
パーティクル サンプラ ノードのユーザ定義スカラー 1 PP(User Scalar 1 PP)がシェーダのノイズにコネクトされます。
パーティクル サンプラノードはユーザ定義スカラー 1 PP(User Scalar 1 PP)の値を取得して、それをノイズに渡します。この例では、エクスプレッションを使用してユーザ定義スカラー 1 PP(User Scalar 1 PP)に値を指定しましたが、ランプを使用して値を指定することもできます。
たとえば、myNoise というアトリビュート(すでにエクスプレッションが書き込まれているか、またはランプにコネクトされている)がすでにあって、この値をパーティクル サンプラ ノードに渡したいとします。この場合には次のようにします。
userScalar1PP = myNoise;
これで、パーティクル サンプラノードはユーザ定義スカラー 1 PP(User Scalar 1 PP)を取得します。このユーザ定義スカラー 1 PP は必要に応じて myNoise の値を取得します。これはエクスプレッションで行い、単に myNoiseをユーザ定義スカラー 1 PP(User Scalar 1 PP)にコネクトしないでください。