スターター コンテンツのスモーク エフェクトを Niagara で再作成する

このドキュメントでは、スターター コンテンツの Cascade スモーク エフェクトを Niagara を使用して再作成する方法について説明します。

Windows
MacOS
Linux

Unreal Engine 4 (UE4) のスターター コンテンツには、Cascadeで作成されたスモーク パーティクル エフェクトが含まれています。このドキュメントでは、この Cascade スモーク エフェクトを Niagara で再作成する方法にについて学習します。ここで紹介する例は、Cascade から Niagara への移植をサポートするものです。

前提条件:

このドキュメントではスターター コンテンツに含まれる「M_smoke_subUV」マテリアルを使用します。スターター コンテンツをプロジェクトに追加していない場合は、先に進む前に追加してください。また、「Niagaraでスプライト パーティクル エフェクトを作成する 」で作成した「FX_Smoke」エミッタも使用します。

システムとエミッタを作成する

Cascade とは異なり、Niagara のエミッタとシステムは独立しています。現在推奨しているワークフローは、既存のエミッタまたはエミッタ テンプレートからシステムを作成することです。ただし、既存のエミッタを複製するため、プロセスは若干異なります。

  1. プロジェクトの「Content」フォルダに、この操作ガイドで使用するためのフォルダを新規作成します。

  2. Niagaraでスプライト パーティクル エフェクトを作成する 」で作成した FX_Smoke エミッタをコピーします。

    クリックしてフルサイズ表示。

  3. 複製したエミッタを手順 1 で作成したフォルダにドラッグします。コンテキスト メニューが表示されたら [Move] を選択します。

  4. コピーしたエミッタの名前を「FX_DarkSmoke」に変更します。こうすることで、「Niagaraでスプライト パーティクル エフェクトを作成する 」で作成したスモーク エフェクトと区別することができます。

    Rename the Duplicate Emitter

  5. 新しいスモーク エミッタを右クリックして [Create Niagara System (Niagara システムを作成する)] を選択します。

    Create System From Emitter

    Niagara システムを作成する方法は何通りかあります。この例では、作成済みのエミッタを使って開始する方法を使用するので、エミッタを含むシステムがすぐに作成できます。ただし、スプライト パーティクル エフェクト作成の操作ガイドにもあるように、エミッタ ウィザードとシステム ウィザードには Niagara システムの作成および設定オプションがたくさんあります。

  6. システムに「DarkSmoke」と名前を付けます。こうすることで、「Niagara でスプライト パーティクル エフェクトを作成する 」で作成したスモーク エフェクトと区別することができます。

    Rename System

  7. FX_DarkSmoke エミッタをダブルクリックして Niagara エディタで開きます。エミッタで設定を編集したら、DarkSmoke システムも併せて保存する必要があります。

  8. DarkSmoke システムをレベル内にドラッグすると、プロジェクトのワールドのコンテキスト内で変更をプレビューすることができます。

    クリックしてフルサイズ表示。

    パーティクル エフェクトを作成する際は、システムをレベル内にドラッグすることをお勧めします。こうすることで、すべての変更をコンテキスト内で確認して編集することができます。システムに加える変更は、レベル内にあるシステムのインスタンスにも自動的に適用されます。

Emitter Update 設定を編集する

まず Emitter Update グループでモジュールを編集します。挙動には、エミッタに適用されるものと各フレームを更新するものがあります。

  1. [System Overview (システム概要)] にある [Emitter Update (エミッタ更新)] グループをクリックして、[Selection (選択)] パネルで開きます。

    クリックしてフルサイズ表示。

  2. Emitter State モジュールを展開します。モジュールはこのエミッタの時間とスケーラビリティを制御します。既に「Simple Sprite Burst」テンプレートを使用したので、Life Cycle Mode[Self] に設定されています。通常、これは特定のエミッタに対してエミッタ ライフ サイクル ロジックを完全にカスタマイズするために使用しますが、このエフェクトに対しては必要ありません。ドロップダウンをクリックして Life Cycle Mode[System] に設定します。この設定により、ライフサイクル設定が計算されて、通常はパフォーマンスが最適化されます。デフォルトでシステムは 5 秒間隔で無限にループします。

    クリックしてフルサイズ表示。

  3. Spawn Rate モジュールを開きます。[Spawn Rate (スポーン率)] を「25」に設定します。

    クリックしてフルサイズ表示。

Particle Spawn 設定を編集する

次に、Particle Spawn グループのモジュールを編集します。これらの挙動は、初回スポーン時にパーティクルに適用されます。

  1. [System Overview][Particle Spawn] をクリックして [Selection] パネルで開きます。

    クリックしてフルサイズ表示。

  2. Initialize Particle モジュールを開きます。[Point Attributes][Lifetime] を展開します。Lifetime パラメータでは、パーティクルが消滅するまでの表示期間を指定します。[Minimum (最小値)][Maximum (最大値)] を以下のように変更します。

    クリックしてフルサイズ表示。

    パラメータ

    Minimum

    3.0

    Maximum

    5.0

  3. [Color] を展開します。[RGB] 値を以下のように変更します。

    クリックしてフルサイズ表示。

    パラメータ

    Red

    .208

    Green

    .208

    Blue

    .208

  4. [Sprite Attributes (スプライト属性)][Sprite Size (スプライト サイズ)] を展開します。[Minimum (最小値)][Maximum (最大値)] を以下のように変更します。

    クリックしてフルサイズ表示。

    パラメータ

    Minimum

    50

    Maximum

    90

  5. Add Velocity モジュールを開きます。 Velocity[Minimum (最小値)] と [Maximum (最大値)] を以下のように変更します。

    クリックしてフルサイズ表示。

    パラメータ

    Minimum

    X:12, Y:0, Z:5

    Maximum

    X:32, Y:0, Z:7

  6. Sphere Location モジュールを開きます。[Sphere Radius (球体の半径)] の値を 30 に変更します。

    クリックしてフルサイズ表示。

Particle Update 設定を編集する

次に Particle Update グループのモジュールを編集します。これらの挙動はエミッタのパーティクルに適用され、それぞれのフレームを更新します。

  1. [System Overview][Particle Update] をクリックして [Selection] パネルで開きます。

    クリックしてフルサイズ表示。

  2. Acceleration Force モジュールを開きます。加速度の [Z] の値を「20」に設定します。

    クリックしてフルサイズ表示。

  3. Scale Color モジュールを開きます。カーブ ラインを右クリックして [Add Key to Curve (キーをカーブに追加)] を選択し、[Scale Alpha (スケール アルファ)] に 3 つ目のキーを追加します。

    クリックしてフルサイズ表示。

  4. これらの 3 つのキーを次の値に設定します。

    クリックしてフルサイズ表示。

    キー番号

    時間

    1

    .08

    .3

    2

    .16

    1.0

    3

    .68

    .3

最終結果

上記の手順を完了すると、レベル内のスモーク システムによって下記の動画に似たスモーク エフェクトが生成されます。動画の右側は Cascade パーティクル システム、左側は Niagara の同等のシステムです。

Tags
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback