nParticle のライフスパンと半径を編集する

 
 
 

シミュレーションを再生してみると、nParticle が実際の煙と違って空中に消えていっていないのがわかります。これは、nParticle のライフスパンがまだ定義されていないためです。

このレッスンでは、nParticle のライフスパン(Lifespan) アトリビュートを使用して、nParticle が指定した寿命に達すると消えるようにします。ライフスパンに応じて nParticle オブジェクトのサイズ(半径(Radius))が変化するよう設定して、時間の経過に従って nParticle のサイズが増減するようにします。

nParticle のライフスパン(Lifespan)を設定するには

  1. アウトライナ(Outliner)nParticle_Smoke を選択します。
  2. アトリビュート エディタ(Attribute Editor)で、nParticle_SmokeShape タブをクリックします。
  3. ライフスパン(Lifespan)セクションで、ライフスパン モード(Lifespan Mode)リストからランダム範囲(Random range)を選択します。
  4. シミュレーションを再生します。

    今度は、nParticle が放出後すぐに消滅(シーンから消える)しています。nParticle のライフスパン(Lifespan)は秒単位で設定します。つまり、ライフスパン(Lifespan)が 1.0 であれば、nParticle は 1 秒後に消滅します。

  5. ライフスパン(Lifespan)を 5 に設定します。
  6. nParticle のライフスパンをランダム化するには、ランダム ライフスパン(Lifespan Random)を 5 に設定します。
  7. シミュレーションを巻き戻してから再生します。

    nParticle は以前よりランダムに消滅するようになりましたが、nParticle オブジェクトの密度が不十分でまだ煙らしく見えません。nParticle の半径(Radius)を大きくして nParticle オブジェクトの密度を濃くします。

リアルな煙のシミュレーションでは、煙が空中に立ち昇るにつれて nParticle を徐々に消滅させていく必要があります。半径スケール(Radius Scale)のランプを使用し、時間の経過につれて各 nParticle の半径を大きくして、煙が分散してシーンから徐々に消えていく効果を出します。

nParticle のサイズを設定するには

  1. パーティクル サイズ(Particle Size)セクションで、半径(Radius)を 5.0 に設定します。
  2. 半径スケール(Radius Scale)セクションでランプの最初のマーカーを選択し、選択した位置(Selected Position)を 0.016 に設定して、選択した値(Selected Value)を 0.04 に設定します。

    ランプは、選択した位置(Selected Position)および選択した値(Selected Value)フィールドの右側にグラフのような長方形で表示されます。まだランプにマーカーがない場合は、グラフをクリックして、マーカーを目的の位置にスライドするか、マーカーの値を選択した位置(Selected Position)および選択した値(Selected Value)フィールドに入力します。最初のマーカーは線がグラフの左端の部分と交差する位置に、最後のマーカーは線がグラフの右端の部分と交差する位置にある必要があります。ランプ内をクリックしてマーカーを作成します。

    新しいマーカーを作成すると、選択した値(Selected Value)選択した位置(Selected Position)の 2 つの値を設定できます。たとえば、選択した値(Selected Value)は、それぞれ nParticle オブジェクトの半径(Radius)アトリビュートのスケーリング値を表します。既定では、ランプはスケール値 1 を定義します。つまり、ランプ上に存在するポイントは 1 つのみで、このポイントはアトリビュートのスケール係数 1 を表します。選択した位置を 0.5 に設定すると、パーティクル単位の半径が半径(Radius)の値の半分になります。

  3. ランプ内をクリックして追加マーカーを作成し、新しいマーカーの選択した位置(Selected Position)および選択した値(Selected Value)を次の値に設定します。
    マーカー 選択した位置(Selected Position) 選択した値(Selected Value)
    2 0.732 0.180
    3 0.882 0.480
    4 1.0 1.0

    ランプの各ポイントについて、補間(Interpolation)は既定の設定のリニア(Linear)のままにします。

  4. 半径スケールの入力(Radius Scale Input)正規化した存在時間(Normalized Age)に設定します。

    正規化した存在時間(Normalized Age)を使用する場合、パーティクル単位の半径は nParticle オブジェクトのライフスパンの範囲内にマップされます。

  5. パーティクル単位の半径をランダムにするには、半径のスケールのランダム化(Radius Scale Randomize)を 0.25 に設定します。
  6. シミュレーションを再生します。

    引き続き、ランプにさらにマーカーを追加してパーティクル単位の半径を調整したり、シミュレーションを再生しながらランプ値を最適化したりすることができます。