概要

 
 
 

このレッスンでは、溶融スラグがシュートを滑り落ちるときにスラグから飛び散る火花を作成します。火花の放出や動作に、パーティクル エクスプレッションを使用せずにリアルさを加味するには、2 段階の nParticle エフェクトを設定します。

火花エフェクトの第 1 段階では、nParticle スラグ(nParticle_slag)が nRigid_chute と衝突し、パーティクル衝突イベントをトリガします。パーティクル衝突イベントにより、nParticle_sparks_emitter という名前の新しい nParticle オブジェクトが作成されます。

第 2 段階では、nParticle_sparks_emitter オブジェクトを、nParticle_sparks という名前の 3 番目のパーティクル システムのサーフェス エミッタ ソースとして使用します。nParticle_sparks オブジェクトから放出されるパーティクルがシミュレートされる火花で、これはシーンに表示されます。nParticle_sparks_emitter オブジェクトはシーンには表示されません。

火花がランダムに見える場所とタイミングで、適切な量が放出されるようにするには、nParticle_sparks_emitter パーティクルの数をコントロールする必要があります。このためには、放出オーバーラップの削減(Emission Overlap Pruning)アトリビュートを使用して、パーティクルがシュートに沿った特定の領域で放出されるようにします。その結果、パーティクル エクスプレッションやスクリプトを使用しない、ランダム化のエフェクトになります。

nParticle システムが相互に衝突しないことが重要です。nParticle が衝突すると、メッシュが分断されたり好ましくない衝突イベントが作成されて、結果として大量の火花が生成されます。これを回避するには、各システム間で衝突ペアを除外(Exclude Collide Pairs)を使用して、nParticle とスラグ シュートとの衝突は可能にしたままで、nParticle 同士の衝突を防ぎます。