15.トリガーを送信してエフェクトを変化させよう¶
概要¶
本章では、Effekseerのトリガー機能について説明します。 トリガー機能は再生中のエフェクトを途中で変化させることができます。
例えば次の例のように、エネルギーをチャージしている武器をトリガーで発射させるといったエフェクトが実現できます。
ダブルクリックでトリガーを送信します。
トリガー機能¶
トリガーは再生中のエフェクトに対して4つまでのトリガーを送信できる仕組みです。 トリガーを送信されたエフェクトは、ノードに設定されたパラメータに応じて挙動を変化させることができます。
トリガーの設定¶
トリガーによる挙動の変化は、共通で設定します。
共通パネルのトリガー設定
エディタからトリガーを送信する¶
トリガーはコントローラパネルから送信することができます。
トリガーを送信する0,1,2,3ボタン
ゲームからトリガーを送信する¶
SDK、各ゲームエンジン向けプラグインにトリガーを送信するAPIがあります。
サンプルファイル¶
本章ではサンプルファイルTriggerLaser.efkefc
を使って解説します。
本章で作成するエフェクトのノード構成
エフェクトをPlayすると、次の動作を行います。
Charge
ノードのパーティクルは生成され、子ノードのパーティクルが生成され続ける。Laser
ノードのパーティクルは生成されない
エフェクトへトリガー0を送信すると、次の動作を行います。
Charge
ノードのパーティクルは削除され、子ノードのパーティクル生成が停止するLaser
ノードのパーティクルは生成を開始し、子ノードのパーティクルも生成される
トリガーを送信すると、パーティクル削除するノード¶
Chargeノードのトリガー設定
トリガーを送信すると、パーティクル生成開始するノード¶
Laserノードのトリガー設定
Tips¶
トリガーによって削除されたパーティクルは瞬時に消えてしまって不自然かもしれません。
その場合は削除後にフェードアウト
を設定すると、フェードアウトによって自然に消滅させることができます。
フェードアウト挙動
生存時間内にフェードアウト
では寿命による削除でフェードアウトされますが、トリガーによる削除ではフェードアウトされません。
次の例はどちらもトリガーによってパーティクルは削除されていますが、フェードアウトの挙動が異なります。
生存時間内にフェードアウト |
削除後にフェードアウト |
まとめ¶
本章ではトリガーの使い方を説明しました。トリガーを活用してインタラクティブなエフェクトを作成しましょう。