パーティクル サンプラ(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)に値を指定しましたが、ランプを使用して値を指定することもできます。
たとえば、myNoise というアトリビュート(すでにエクスプレッションが書き込まれているか、またはランプに接続されている)がすでにあって、この値をパーティクル サンプラノードに渡したいとします。この場合には次のようにします。
userScalar1PP = myNoise;
これで、パーティクル サンプラノードはユーザ定義スカラー 1 PP (User Scalar 1 PP)を取得します。このユーザ定義スカラー 1 PP は必要に応じて myNoise の値を取得します。エクスプレッションを使って実行してください。myNoise を userScalar1PP や userVector1PP のようなユーザ定義アトリビュートのいずれかに単純に接続しないでください。