放出のランダム度を取り扱う
 
 
 

2 つのエミッタを同一のアトリビュートを使用して作成した場合、放出されるパーティクルはデフォルトでは同じ位置から同時に放出されてしまいます。そこで各エミッタに異なる値のシード(Seed)アトリビュートを与えれば、パーティクルはランダムな別の位置から放出させることができます。

異なるシード値を持つ複数のパーティクル オブジェクトによって 1 つのエミッタからパーティクルを放出させると、放出される位置は変化しますが、同じシード値を設定した場合は常に同じ位置から同じ方向に放出されます。

デフォルトでのシード値は 1 なので、同じアトリビュートがあるエミッタで異なる位置からパーティクルを放出させたい場合は、異なるシード値を設定しなければなりません。新しく設定したシード値は巻き戻してから再生させれば有効になります。ひとつのオブジェクトからパーティクルを放出させた場合のシード値をいくら変化させてもシーン上の放出される位置は変化しません。

シード値の大きさは意味を持ちません。たとえば、シード値が 2 の場合、ランダム度がシード値が 1 の場合の 2 倍になるわけではありません。数値が 1 でも、17 や 1000 であっても、異なるランダム値のシーケンスが設定されるだけです。

シード値を設定するには、放出されるパーティクル オブジェクトを選択し、アトリビュート エディタ(Attribute Editor)放出のランダム度シード(Emission Random Stream Seeds)セクションを開きます。関連付けられたエミッタの名前(たとえば、emitter1)の数値入力フィールドとスライダが表示されます。複数のエミッタを使用して 1 つのパーティクル オブジェクトを放出する場合は、エミッタごとに数値入力フィールドとスライダがあります (アトリビュート名はシードですが、この名前はアトリビュート エディタに表示されません)。

ヒント: エミッタを複製せずに 1 つのエミッタを使用してふたつの同一の流れをくむパーティクルを放出させることができます。まず、同一のアトリビュートがある 2 つのパーティクル オブジェクトを 1 つのエミッタにコネクトします。次に、各シード値を必ず同じ値にし、両方の放出されるパーティクル オブジェクトのワールドでの放出(Emission In World)アトリビュート エディタ放出アトリビュート(Emission Attributes)セクション)をオフにします。最後に、一方のパーティクル オブジェクトをもう片方から遠ざけます。

複数のパーティクル オブジェクトを複数のエミッタにコネクトした場合に、どのシード(Seed)がパーティクル オブジェクトに対応するかを調べるには、ハイパーグラフ(Hypergraph)でディペンデンシー グラフを確認します。