概要
これはUnrealEngine4向けのEffekseerプラグインです。 このプラグインを使用すると、UnrealEngine4上でEffekseerで作成したエフェクトを再生できるようになります。
動作環境
バージョン
UnrealEngine4.16以降
コンパイラ
環境に合わせたコンパイラをインストールする必要があります。 例えば、WindowsではVisualStudio2015、もしくはVisualStudio2017をインストールする必要があります。
プラットフォーム
プラットフォーム固有の機能は使用していないため、 EffekseerForUnrealEngine4はほとんどのプラットフォームで動作します。
構成
EffekseerForUE4では主に2つのコンポーネントで構成されています。
それは、EffekseerSystemComponent
と EffekseerEmitterComponent
です。
EffekseerSystemはエフェクトの描画を行います。そのため、レベル内に必ず1つ必要です。
EffekseerEmitterComponentはエフェクトの生成や操作を行います。エフェクト1つ1つに必要です。
これらの他に、Effekseerのefkファイルに対応するアセットのEffekseerEffect
と Effekseerのefkmdlファイルに対応するアセットのEffekseerModel
があります。
また、コンポーネントを使用しやすくした、BP_EffekseerSystem
と BP_EffekseerEmitter
のブループリントもあります。
サンプル
EffekseerForUE4.uproject
にサンプルのレベルが収録されています。
これを見るとEffekseerのエフェクトが再生されていることがわかります。
インストール・使用方法
ここでは、サンプル以外のプロジェクトでEffekseerForUE4をインストール・使用する方法について説明します。
1.1. ディレクトリのコピー
Plugins
のディレクトリをあなたが作成したuprojectと同じディレクトリにコピーします。
1.2. C++のコードの追加
中身は空で問題ないので、何かしらのC++のコードをプロジェクトに追加します。
1.3. Plugin の有効化
UnrealEngine4からPluginを有効化します。再起動を求められる場合があるので、UnrealEngine4を再起動します。
再起動した後にコンパイルを求められることがあります。プロジェクトをコンパイルします。
1.4. ブループリントの追加
BP_EffekseerSystem
と BP_EffekseerEmitter
をレベルに追加します。
これらはプラグインのコンテンツにあるので、プラグインのコンテンツを表示できるようにします。
プラグインのコンテンツのディレクトリに移動します。
ブループリントをレベルに追加します。
現在、BP_EffekseerSystemは必ず、(0,0,0)の位置に配置する必要があります。
BP_EffekseerEmitterはエフェクトを表示したい位置に配置します。
1.5. アセットの追加
Effekseerから出力されたefkファイルとテクスチャをコンテンツに追加します。
EffekseerEffectアセットにテクスチャを割り当てます。 EffekseerEffectアセットを右クリックした後、AssignResourcesを実行します。
エフェクトが小さいことが多いので、EffekseerEffectアセットをダブルクリックしてスケールを設定します。 大きい数字を入力してエフェクトを見やすくしましょう。
BP_EffekseerEmitterを選択して、コンポーネントを表示させます。 EffekseerEmitterコンポーネントのエフェクトに、先ほど読み込んだEffekseerEffectアセットを設定します。
EffekseerEmitterコンポーネントのAuto ActivateをOnにします。
実行すると、エフェクトが表示されるのがわかります。
2.1. Effekseerのコンポーネント
他のアクターにEffekseerのコンポーネントを追加することもできます。 ただし、EffekseerSystemは複雑なので、EffekseerEmitterのコンポーネントのみ使用することをお勧めします。
3.1. アニメーション通知
アニメーション通知でも使用できます。アニメーションシーケンス内で指定した時間にエフェクトを再生できます。
4.1 ネットワーク機能
- Windowsのみ
ネットワーク経由でアプリケーション(ゲーム等)で再生しているエフェクトを外部からアプリケーションの起動中に編集することができます。
EffekseerSystemコンポーネントにEffekseerから接続するためのポートを指定します。DoStartNetworkAutomaticallyをOnにするか、EffekseerSystemコンポーネントのStartNetworkを実行します。 そうすると、Effekseerからエフェクトを編集できるようになります。他のコンピューターからエフェクトを編集するためにはファイヤーウォールの設定でポート開放する必要があります。
制限として、ブレンドの変更や使用していない画像への変更は適用されません。
注意
α付きのグレースケールの画像は表示がおかしくなります。
制限
減算、歪みはEffekseerでの表示と異なります。
モデルへの法線マップは適用されません。
モデルを大量に描画すると速度が低下しやすくなります。
Todo
減算、歪みのEffekseerとUnrealEngine4の表示の一致
モデルの法線の実装
使いやすさの向上
更新履歴
1.43b (2019/05/01)
- 4.22に対応
1.43 (2018/03/02)
4.21に対応
ネットワーク機能の追加
1.40 (2018/09/12)
4.20に対応
関数の追加(再生速度、色の設定)
1.31 (2017/11/20)
-複数の不具合を修正
-アニメーション通知に対応
1.30 (2017/11/01)
-公開
ライセンス
The MIT License (MIT) Copyright (c) 2011 Effekseer Project Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.