Version: 2021.3
言語: 日本語
Limit Velocity over Lifetime モジュール
Lifetime by Emitter Speed モジュール

Inherit Velocity モジュール

このモジュールはサブエミッターで使用します。親システム内の各パーティクルは、サブエミッターのパーティクルを生成できます。このモジュールは、親パーティクルから速度を読み取り、サブエミッターのパーティクルの速度がその速度にどのように経時的に反応するかを制御します。

Inherit Velocity モジュールの使用

このモジュールは Particle System コンポーネントの一部です。Unity は、新しいパーティクルシステムゲームオブジェクトの作成時、あるいは既存のゲームオブジェクトへの Particle System コンポーネントの追加時に、そのパーティクルシステムに Inherit Velocity モジュールを追加します。デフォルトではこのモジュールは無効化されています。新しいパーティクルシステムを作成してこのモジュールを有効にするには、以下を行ってください。

  1. GameObject > Effects > Particle System をクリックします。
  2. Inspector 内で Particle System コンポーネントを見つけます。
  3. Particle System コンポーネント内で Inherit Velocity モジュールの折り畳みメニューを見つけます。
  4. 折り畳みメニューのヘッダーの左側にあるチェックボックスを有効にします。

API

このモジュールは Particle System コンポーネントの一部なので、ParticleSystem クラスを通してこれにアクセスします。ランタイムでこれにアクセスして値を変更する方法については、InheritVelocityModule API のドキュメント を参照してください。

プロパティ

このセクション内の一部のプロパティでは、異なるモードを使用して値の設定が行えます。使用可能なモードについての詳細は、Varying properties over time を参照してください。

プロパティ 機能
Mode どのようにエミッター速度をパーティクルに適用するかを指定します。
    Current エミッターの現在の速度をすべてのフレームで、すべてのパーティクルに適用します。例えば、エミッターが速度を落とせば、すべてのパーティクルも速度を落とします。
    Initial 各パーティクルが発生したときに、エミッターの速度をいったん適用します。パーティクルが発生した後にエミッターの速度に変化が起きても、パーティクルには影響しません。
Multiplier パーティクルが継承するエミッターの速度の割合

詳細

このエフェクトは、車の排気ガスやロケットの噴射、蒸気機関車の煙突から出る蒸気など、動いているオブジェクトからパーティクルを放出する場合や、パーティクルを放出するオブジェクトの何割かの速さで、パーティクルが移動しているようなときに役立ちます。このモジュールは、メインモジュールSimulation SpaceWorld に設定されているときのみ、効力があります。

時間の経過とともに、エフェクトに影響を与えるためにカーブを使用することも可能です。例えば、時間とともに減衰する強い引力を新しく作成したパーティクルに適用することができます。これは、時間とともにゆっくりと漂い、それを放出した機関車についてゆくのを停止する蒸気機関車の蒸気に利用できます。

Unity は、以下のどちらかの方法でエミッターの速度を計算します。 * アタッチされた Rigidbody コンポーネントの速度に基づいて計算する。 * パーティクルシステムの Transform コンポーネントが現在のフレームでどれだけ移動したかに基づいて計算する。

Unity の使用する方法を指定するには、メインモジュールの Emitter Velocity プロパティを参照してください。

Limit Velocity over Lifetime モジュール
Lifetime by Emitter Speed モジュール