nParticle が指定された存在時間に達したときに、シーンから nParticle を削除するためにライフスパンを設定できます。通常、ライフスパンは、放出されたパーティクルに設定されます。たとえば、ライフスパンを使用して、放出された煙や火をフェード アウトさせることができます。ライフスパンは、すべてのパーティクルについて一括に、またはパーティクル単位で設定できます。既定では、nParticle はシミュレーションの期間中は存在するように設定されています。「nParticle ライフスパン アトリビュート」を参照してください。「パーティクル ライフスパンの計算方法」も参照してください。
エクスプレッションを使用したパーティクル単位のライフスパン(Lifespan)の詳細については、「ライフスパン(lifespan)を操作する」を参照してください。
オブジェクト単位のライフスパンを設定する
オブジェクト単位のライフスパンを設定すると、パーティクル オブジェクト内のすべてのパーティクルに同一のライフスパンが割り当てられます。パーティクルを際限なく存続させることも、すべてのパーティクルを同じ存在時間で消滅させることもできます。
パーティクルを際限なく存続させるには
- nParticle オブジェクトを選択し、アトリビュート エディタ(Attribute Editor)でオブジェクトの nParticlesShape ノードのタブを選択します。
- ライフスパン アトリビュート(Lifespan Attributes)セクションで、ライフスパン モード(Lifespan Mode)を不滅(Live forever)に設定します。
同じ存在時間でパーティクルが消滅するようにするには
- パーティクル オブジェクトを選択します。次にそのオブジェクトを表示します。
- nParticleShape ノードのアトリビュート エディタ(Attribute Editor)のライフスパン アトリビュート(Lifespan Attributes)領域で、ライフスパン モード(Lifespan Mode)を一定(Constant)に設定します。
- ライフスパン(Lifespan)に目的の値を設定します。
ライフスパン(Lifespan)の値は、パーティクル オブジェクトが生成されてから消滅するまでの秒数です。nParticle ツール(nParticle Tool)を使用して作成したパーティクル オブジェクトは、シーンの最初のフレームの開始直後に作成されたとみなされます。エミッタ パーティクルは、それが放射されるときに作成されます。既定値は 1 です。この場合、1 秒が経過するとパーティクル オブジェクトは消滅します。
ヒント: パーティクルが消滅しない場合は、ライフスパン(Lifespan)が大きい値(そのシーンのタイム スライダ(Time Slider)の時間を超える数)に設定していないかを確認してください。
パーティクル単位のライフスパンを設定する
パーティクル単位のライフスパンを設定すると、パーティクル オブジェクト内のそれぞれのパーティクルにそれぞれ異なるライフスパンが割り当てられます。パーティクルを任意の存在時間で消滅させたり、個々のパーティクルにライフスパンを割り当てたり、エクスプレッション(式)を使用してライフスパンを制御したりできます。
ランダム存在時間でパーティクルが消滅するようにするには
- パーティクル オブジェクトを選択し、アトリビュート エディタ(Attribute Editor)を表示します。
- ライフスパン アトリビュート(Lifespan Attributes)セクションで、ライフスパン モード(Lifespan Mode)をランダム範囲(Random range)に設定します。
- ライフスパン(Lifespan)に目的の値を設定します。
- ランダム ライフスパン(Lifespan Random)に希望する値を設定します。
ライフスパンは、ライフスパン(Lifespan)を平均値とし、ランダム ライフスパン(Lifespan Random)を分布の幅として、均一に分布されます。
たとえば、ライフスパン(Lifespan)が 3 で、ランダム ライフスパン(Lifespan Random)が 2 の場合は、それぞれのパーティクルのライフスパンは 2 から 4 までです。
ライフスパン モード(Lifespan Mode)がランダム範囲(Random range)の場合の乱数列は、パーティクル オブジェクト内に維持され、リワインドしたときに自動的に再シードされます。乱数列を自分で再シードする必要はありません。
- 乱数列を変更したい場合は、一般シード(General Seed)の値を指定します。
通常、この値を変更する必要はありません。外観が同じ 2 つのパーティクル オブジェクトが必要な場合は、他方のパーティクル オブジェクトの一般シード(General Seed)値と一致するように、この値を設定できます。
注: ライフスパン(Lifespan) = 4、ランダム ライフスパン(Lifespan Random) = 2 の場合、数学的にはエクスプレッション(式) $lifespanPP = 3 + rand(2); と等しくなりますが、ライフスパンを設定するこれらの 2 つの方法を使用した場合の結果は、乱数列どうしが異なるため等しくなりません。
個々のパーティクルのライフスパン(lifespan)を制御するには
- パーティクル オブジェクトを選択し、nParticleShape ノードのアトリビュート エディタ(Attribute Editor)を表示します。
- ライフスパン アトリビュート(Lifespan Attributes)セクションで、ライフスパン モード(Lifespan Mode)をライフスパン PP のみ(lifespanPP only)に設定します。
- パーティクル単位(配列)アトリビュート(Per Particle (Array) Attributes)セクションで、PP ライフスパン(Lifespan PP)フィールドを右クリックし、ポップアップ メニューでコンポーネント エディタ(Component Editor)を選択します。
- (コンポーネント タイプで選択します(Select by component type)アイコン)をクリックします。
- ワークスペースで、編集したい特定の複数のパーティクルを選択し、コンポーネントのロード(Load Components)をクリックします。
コンポーネント エディタ(Component Editor)の使用法については、コンポーネント エディタ(Component Editor)を使用してパーティクル アトリビュートを設定するを参照してください。
- PP ライフスパン(lifespanPP)の入力フィールドをクリックし、値を入力します。
エクスプレッションを使用してライフスパンを制御するには
- パーティクル オブジェクトを選択し、アトリビュート エディタ(Attribute Editor)を表示します。
- ライフスパン アトリビュート(Lifespan Attributes)セクションで、ライフスパン モード(Lifespan Mode)をライフスパン PP のみ(LifespanPP only)に設定します。
- パーティクル単位(配列)アトリビュート(Per Particle (Array) Attributes)セクションで、PP ライフスパン(Lifespan PP)フィールドを右クリックし、作成時のエクスプレッション(Creation Expression)またはダイナミクス前のランタイム エクスプレッション(Runtime Expression Before Dynamics)またはダイナミクス後のランタイム エクスプレッション(Runtime Expression After Dynamics)を選択します。
- 作成時のエクスプレッションまたはランタイム エクスプレッションを作成し、固有の値をそれぞれのパーティクルに割り当てます(『MEL とエクスプレッション』マニュアルを参照)。
このアトリビュートやその他のパーティクル単位のアトリビュートをキー設定することはできません。