ナイアガラでメッシュ パーティクル エフェクトを作成する方法

このドキュメントでは、ナイアガラを使ってパーティクルス エフェクトでスタティック メッシュを使用する方法を説明します。

Windows
MacOS
Linux
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

カメラ方向のスプライト ではなくスタティック メッシュをスポーンすることで、より現実味のあるエフェクトを作成することができます。以下では、スプライトではなくスタティック メッシュをスポーンするよう、ナイアガラ エミッタを設定する方法を紹介します。

前提条件: このドキュメントでは Starter Content (スターター コンテンツ) に含まれる Shape_Sphere スタティック メッシュを使用します。このスタティック メッシュまたは Starter Content をプロジェクトに追加していない場合は、先に進む前に追加してください。

マテリアルを作成する

このガイドでは、たくさんの風船が放たれたように見えるエフェクトを作成します。このエフェクトを向上すべく、メッシュをゴム風船に見えるようにするシンプルなマテリアルを作成します。

  1. コンテンツ ブラウザ内を右クリックして [Material (マテリアル)] を選択します。

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

  2. 新しいマテリアルに「M_Balloon」と名前を付けます。これをダブルクリックしてマテリアル エディタで開きます。

    Name Material

  3. [Palette (パレット)] パネルの検索バーに「 Particle 」と入力します。[Particle Color (パーティクル カラー)] を選択してグラフに Particle Color ノードを追加します。

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

  4. [RGB] 出力からドラッグして、Material ノードの [Base Color (ベース カラー)] 入力に接続します。

  5. 1 キーを押しながらグラフ内をクリックします。これで Constant ノードが作成されます。これをコピーして 2 回貼り付けて、合計 3 つの Constant ノード を作成します。

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

  6. Constant ノードの出力の 1 つを Material ノードの [Metallic (メタリック)] 入力に接続します。

  7. 選択した定数の [Value (値)] は、[Details (詳細)] パネルの [Material Expression Constant (マテリアル式定数)] で設定できます。このマテリアルはメタリックではありません。Metallic 定数の値は「0」のままにしておきます。

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

  8. 2 番目の Constant ノードの出力を Material ノードの [Specular (スペキュラ)] 入力に接続します。

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

  9. Specular 定数ノードを選択した状態で、[Details] パネルでスペキュラの [Value (値)] を「0.7」に設定します。これによってマテリアルのサーフェスに多少の反射効果が加わります。

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

  10. 3 番目の Constant ノードの出力を Material ノードの [Roughness (ラフネス)] 入力に接続します。

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

  11. Roughness 定数ノードを選択した状態で、[Details] パネルでラフネスの [Value] を「0.2」に設定します。これによってサーフェスがほぼスムーズになります。

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

    マテリアルの最終結果は次の画像のようになります。

Material Final Result

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

カスケードとは異なり、ナイアガラのエミッタとシステムは独立して機能します。現時点では、既存のエミッタまたはエミッタ テンプレートからシステムを作成するワークフローが推奨されています。

  1. まず、コンテンツ ブラウザ内で右クリックし、[FX] > [Niagara System (ナイアガラ システム)] を選択してナイアガラ システムを作成します。ナイアガラ エミッタ ウィザードが起動します。

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

  2. [New system from selected emitters (選択したエミッタに基づく新しいシステム)] を選択します。[Next (次へ)] をクリックします。

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

  3. [Templates (テンプレート)][Fountain (噴水)] を選択します。

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

  4. プラス記号 (+) のアイコンをクリックして、システムに追加するエミッタのリストに目的のエミッタを追加します。次に [Finish (完了)] をクリックします。

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

  5. 新しいシステムに「MeshSystem」と名前を付けます。これをダブルクリックしてナイアガラ エディタで開きます。

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

  6. 新しいシステム内のエミッタ インスタンスには、デフォルトで「Fountain」という名前が付けられていますが、名前は変更可能です。[System Overview (システム概要)] でエミッタ インスタンスの名前をクリックすると、このフィールドが編集可能になります。エミッタの名前を「FX_Mesh」に変更します。

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

  7. MeshSystem をレベル内にドラッグします。

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

レンダラを変更する

Render グループはスタック内の最後にありますが、希望どおりにエフェクトを表示するためにいくつかの変更を行う必要があります。このケースでは、テンプレートにはスプライト レンダラが含まれます。このエフェクトはメッシュ レンダラが必要です。

  1. [System Overview] にある [Render] をクリックして、[Selection (選択項目)] パネルで開きます。

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

  2. メッシュ パーティクル エフェクトを作成するには Mesh Renderer モジュールが必要ですが、テンプレートには Sprite Renderer モジュールが付いています。ゴミ箱 のアイコンをクリックして Sprite Renderer を削除します。

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

  3. [Render] の プラス記号 (+) のアイコンをクリックして、[Mesh Renderer] を選択します。

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

  4. [Particle Mesh (パーティクル メッシュ)] のドロップダウンをクリックして [Shape_Sphere] を選択します。

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

  5. このエフェクトで使用する球状にはデフォルト マテリアルが適用されています。Override Materials を有効にすることによって、作成したカスタム マテリアルを代わりに使うことができます。[Override Materials (マテリアルをオーバーライド)] をクリックして有効にし、プラス記号 (+) のアイコンをクリックして要素を配列に追加します。

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

  6. [Explicit Mat (明示的マテリアル)] のドロップダウンをクリックして [M_Balloon] を選択します。

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

Emitter Update グループの設定を編集する

まず Emitter Update グループでモジュールを編集します。エミッタ自体に適用するビヘイビアと各フレームを更新するビヘイビアがあります。

  1. [System Overview] にある [Emitter Update] グループをクリックして、[Selection] パネルで開きます。

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

  2. [Emitter State (エミッタの状態)] モジュールを展開します。前に Fountain テンプレートを使用したため、[Life Cycle Mode (ライフ サイクル モード)] が [Self (自身)] に設定されています。ドロップダウンをクリックして、[Life Cycle Mode][System (システム)] に設定します。こうすることでシステムによってライフサイクルの設定が計算されるようになり、通常はパフォーマンスが最適化されます。

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

  3. Spawn Rate モジュールでは、エミッタが有効な間、パーティクルのストリームを継続して作成します。このモジュールは Fountain テンプレートにすでに含まれています。[Spawn Rate (スポーン率)] を「100」に設定します。

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

Particle Spawn グループの設定を編集する

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

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

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

  2. Initialize Particle モジュールを展開します。このモジュールでは、関連するいくつかのパラメータを 1 つのモジュールにまとめてスタック内を整理します。[Point Attributes (ポイント属性)] にある Lifetime パラメータを見つけます。このパラメータでは、パーティクルが消滅するまでの表示期間を指定します。このエフェクトでは Uniform Ranged Float (均一化された範囲内の浮動小数) と呼ばれる動的入力を使用して、パーティクルの表示期間をランダム化します。Fountain テンプレート内の Lifetime パラメータにはすでに Uniform Ranged Float が適用されています。[Minimum (最小値)] および [Maximum (最大値)] を以下の値に設定します。

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

    設定

    Minimum

    2.0

    Maximum

    4.0

  3. [Color (カラー)] パラメータを見つけます。RGB のそれぞれの値を以下のように設定します。[Create a Material (マテリアルを作成する)] セクションで作成したマテリアルには内部に色の設定項目がありません。メッシュ パーティクルを本物の風船のように見せるには、色を設定する必要があります。Particle Update グループにはさまざまな方法で色を変更できるモジュールが複数含まれていますが、このエフェクトについてはソリッド カラーがシンプルでうまく機能します。

    設定

    Red

    1.0

    Green

    0.0

    Blue

    0.0

  4. [Sprite Attributes (スプライト属性)] で、[Sprite Size (スプライト サイズ)] および [Sprite Rotation (スプライトの回転)] チェックボックスをオフにします。メッシュを使用しているので、これらの属性はこのエフェクトには必要ありません。

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

  5. 元の球形メッシュはかなり大きいので、このエフェクト向けに大幅に小さくします。[Mesh Attributes (メッシュ属性)] にある [Mesh Scale (メッシュ スケール)] チェックボックスをオンにします。[X][Y][Z] の値をそれぞれ「0.2」に設定します。

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

  6. Add Velocity モジュールでは、パーティクルのスポーンと同時にスポーンに動きを与えます。プラス記号 (+) のアイコンをクリックして [Velocity (速度)] > [Add Velocity (速度を追加)] を選択し、Add Velocity モジュールを [Particle Spawn (パーティクルのスポーン)] セクションに追加します。

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

  7. このエフェクトは放たれる風船を表すことを目的としているため、パーティクルの速さにランダム性を取り入れる必要があります。[Velocity] 値フィールドの横にある下向き矢印をクリックして、[Dynamic Inputs (動的入力)] > [Uniform Ranged Vector (均一化された範囲内のベクター)] を選択します。これによりパーティクルが拡散されて、それぞれが X 軸、Y 軸、Z 軸方向に少しだけ動くようになります。

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

  8. [Velocity] の Minimum および Maximum を以下の値に設定します。これにより、エフェクトの X 軸および Y 軸方向には小さな動きが、Z 軸方向にはより大きな動きが加わります。

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

    設定

    Minimum

    X:15, Y:25, Z:50

    Maximum

    X:30, Y:30, Z:100

  9. Sphere Location モジュールでは、スプライトがスポーンする場所の形状と原点を制御します。スプライトは球体形状でスポーンすることができ、半径を指定することでその球体形状のサイズも設定できます。[Sphere Radius (球体の半径)] の値を「200」に設定します。これにより、本物の風船が放たれたときのように、パーティクルがより拡散されるようになります。

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

Particle Update グループの設定を編集する

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

  1. [System Overview] にある [Particle Update] をクリックして [Selection (選択)] パネルで開きます。

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

  2. 通常は、オブジェクト対する重力の影響をシミュレートするには Gravity Force モジュールを使用します。また、これを使ってパーティクルにアクセラレーションを加えることもできます。[Gravity Force] の [X]、[Y]、[Z] の値をそれぞれ以下のように設定します。

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

    設定

    X

    10

    Y

    10

    Z

    40

  3. Drag モジュールでは抗力をパーティクルに適用して、パーティクルの動きを遅くします。[Drag] の値を「1.0」に設定します。

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

  4. Scale Color モジュールは Fountain テンプレートの一部ですが、このエフェクトでは必ずしも必要ではありません。ゴミ箱 のアイコンをクリックして Scale Color モジュールを削除します。

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

最終結果

お疲れ様でした。ナイアガラでメッシュ パーティクル エフェクトの作成を完了しました。きます。このエフェクトは放たれたたくさんの風船をシミュレートすることが目的ですが、ここで使用するのは非常にシンプルなメッシュとマテリアルです。これらのシンプルなメッシュとマテリアルをより詳細なものに置き換えることで、より現実味のある見栄えにすることができます。

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