カメラ方向のスプライト ではなくスタティック メッシュをスポーンすることで、より現実味のあるエフェクトを作成することができます。このチュートリアルでは、スプライトではなくスタティック メッシュをスポーンするように Niagara エミッタを設定する方法を紹介します。
前提条件: このチュートリアルでは、インポートしたバルーン メッシュを使用します。ネットで検索すればフリーのメッシュが見つかります。または、スターター コンテンツ に含まれる Shape_Sphere スタティック メッシュを使用して練習することもできます。バルーン用のメッシュ、またはスターター コンテンツをプロジェクトに追加していない場合は、先に進む前に追加してください。
マテリアルを作成する
このガイドでは、たくさんの風船が放たれたように見えるエフェクトを作成します。このエフェクトを向上すべく、メッシュをゴム風船に見えるようにするシンプルなマテリアルを作成します。
- コンテンツ ブラウザ内を右クリックして [Create Basic Asset (基本アセットを作成)] で [Material (マテリアル)] を選択します。
画像をクリックするとフルサイズで表示されます。
- 新しいマテリアルに「Balloon_Material」と名前を付けます。これをダブルクリックしてマテリアル エディタで開きます。
画像をクリックするとフルサイズで表示されます。
- [Palette (パレット)] パネルの検索バーに「
Particle
」と入力します。[Particle Color (パーティクル カラー)] を選択し、グラフにドラッグして Particle Color ノードを追加します。画像をクリックするとフルサイズで表示されます。
- RGB 出力からドラッグして、Material ノードの Base Color 入力に接続します。
画像をクリックするとフルサイズで表示されます。
- 1 キーを押しながらグラフ内をクリックします。これで Constant ノードが作成されます。これをコピーして 2 回貼り付けて、合計 3 つの Constant ノード を作成します。
画像をクリックするとフルサイズで表示されます。
- Constant ノードの出力の 1 つを Material ノードの Metallic 入力に接続します。
画像をクリックするとフルサイズで表示されます。
- 選択した定数の [Value (値)] は、[Details (詳細)] パネルの [Material Expression Constant (マテリアル式定数)] で設定できます。このマテリアルはメタリックではありません。Metallic 定数の値は「0」のままにしておきます。
画像をクリックするとフルサイズで表示されます。
- 2 番目の Constant ノードの出力を Material ノードの Specular 入力に接続します。
画像をクリックするとフルサイズで表示されます。
- Specular 定数ノードを選択した状態で、[Details] パネルでスペキュラの [Value (値)] を「0.7」に設定します。これによってマテリアルのサーフェスに多少の反射効果が加わります。
画像をクリックするとフルサイズで表示されます。
- 3 番目の Constant ノードの出力を Material ノードの Roughness 入力に接続します。
画像をクリックするとフルサイズで表示されます。
- Roughness 定数ノードを選択した状態で、[Details] パネルでラフネスの [Value] を「0.2」に設定します。これによってサーフェスがほぼスムーズになります。
画像をクリックするとフルサイズで表示されます。
マテリアルの最終結果は次の画像のようになります。

システムとエミッタを作成する
Niagara エミッタとシステムは独立しています。現時点では、既存のエミッタまたはエミッタ テンプレートからシステムを作成するワークフローが推奨されています。
- まず、コンテンツ ブラウザ内で右クリックし、[FX] > [Niagara System] を選択して Niagara システムを作成します。Niagara Emitter ウィザードが起動します。
画像をクリックするとフルサイズで表示されます。
- [New system from selected emitters (選択したエミッタに基づく新規システム)] を選択します。[Next] をクリックします。
画像をクリックするとフルサイズで表示されます。
- [Templates (テンプレート)] から [Fountain] を選択します。
画像をクリックするとフルサイズで表示されます。
- プラス記号 (+) のアイコンをクリックして、システムに追加するエミッタのリストに目的のエミッタを追加します。次に [完了] をクリックします。
画像をクリックするとフルサイズで表示されます。
- 新しいシステムに「Balloon_System」と名前を付けます。これをダブルクリックして Niagara エディタで開きます。
画像をクリックするとフルサイズで表示されます。
- 新しいシステム内のエミッタ インスタンスには、デフォルトで「Fountain」という名前が付けられていますが、名前は変更可能です。[System Overview (システム概要)] でエミッタ インスタンスの名前をクリックすると、このフィールドが編集可能になります。エミッタに「Balloons」と名前を付けます。
画像をクリックするとフルサイズで表示されます。
- MeshSystem をレベル内にドラッグします。
画像をクリックするとフルサイズで表示されます。
パーティクル エフェクトを作成する際は、システムをレベル内にドラッグすることをお勧めします。こうすることで、すべての変更をコンテキスト内で確認して編集することができます。システムに加える変更は、レベル内にあるシステムのインスタンスにも自動的に適用されます。
レンダラを変更する
Render グループはスタック内の最後にありますが、希望どおりにエフェクトを表示するためにいくつかの変更を行う必要があります。このケースでは、テンプレートにはスプライト レンダラが含まれます。このエフェクトはメッシュ レンダラが必要です。
- [System Overview] にある [Render] をクリックして、[Selection (選択項目)] パネルで開きます。
画像をクリックするとフルサイズで表示されます。
- メッシュ パーティクル エフェクトを作成するには Mesh Renderer モジュールが必要ですが、テンプレートには Sprite Renderer モジュールが付いています。ゴミ箱 のアイコンをクリックして Sprite Renderer を削除します。
画像をクリックするとフルサイズで表示されます。
- [Render] の プラス記号 (+) のアイコンをクリックして、[Mesh Renderer] を選択します。
画像をクリックするとフルサイズで表示されます。
- [Particle Mesh (パーティクル メッシュ)] のドロップダウンをクリックしてメッシュを選択します。バルーン モデルをインポートした場合は、それを選択します。またはテストするためにサンプル マテリアルから Shape_Sphere を選択することもできます。
画像をクリックするとフルサイズで表示されます。
- メッシュが大きすぎたり小さすぎたりして、レベル内でうまく表示されない場合があります。ここで必要に応じてサイズを調整します。メッシュにデフォルトのマテリアルが適用されている場合があります。Override Materials を有効にすることによって、作成したカスタム マテリアルを代わりに使うことができます。[Override Materials (マテリアルをオーバーライド)] をクリックして有効にし、プラス記号 (+) のアイコンをクリックして要素を配列に追加します。
画像をクリックするとフルサイズで表示されます。
- [Explicit Mat (明示的マテリアル)] のドロップダウンをクリックして、先ほど作成したマテリアルである [Balloon_Material] を選択します。
画像をクリックするとフルサイズで表示されます。
Emitter Update グループの設定を編集する
まず、Emitter Update グループのモジュールを編集します。これらはエミッタに適用される動作で、それぞれのフレームを更新します。
- [System Overview] にある Emitter Update グループをクリックして、[Selection (選択)] パネルで開きます。
画像をクリックするとフルサイズで表示されます。
- [Emitter State (エミッタの状態)] モジュールを展開します。前に Fountain テンプレートを使用したため、[Life Cycle Mode (ライフ サイクル モード)] が [Self (自身)] に設定されています。ドロップダウンをクリックして、[Life Cycle Mode] を [System (システム)] に設定します。この設定により、ライフ サイクル設定が計算されて、通常はパフォーマンスが最適化されます。
画像をクリックするとフルサイズで表示されます。
- Spawn Rate モジュールでは、エミッタが有効な間、パーティクルのストリームを継続して作成します。このモジュールは Fountain テンプレートにすでに含まれています。[Spawn Rate (スポーン率)] を「100」に設定します。
画像をクリックするとフルサイズで表示されます。
Particle Spawn グループの設定を編集する
次に、Particle Spawn グループのモジュールを編集します。これらはパーティクルが初めてスポーンされるときに適用される動作です。
- [System Overview] にある Particle Spawn グループをクリックして [Selection (選択)] パネルで開きます。
画像をクリックするとフルサイズで表示されます。
- Initialize Particle モジュールを展開します。このモジュールでは、関連するいくつかのパラメータを 1 つのモジュールにまとめてスタック内を整理します。Point Attributes で Lifetime パラメータを確認します。このパラメータでは、パーティクルが消滅するまでの表示期間を指定します。[Lifetime Mode] には [Random (ランダム)] を選択します。[Minimum (最小値)] と [Maximum (最大値)] を以下のように設定します。
画像をクリックするとフルサイズで表示されます。
設定 値 Minimum 2.0 Maximum 4.0 - Color パラメータを探します。すべてのバルーンを 1 つのソリッド カラーにすることも、他のモードを使用してバリエーションを増やすこともできます。この例では、[Color Mode (カラー モード)] を [Random Range (ランダムな範囲)] に設定します。こうすると、設定した 2 色の間の範囲に入るランダムな色でバルーンを作成します。好きな色になるまで RGB 値を変更します。ここで設定したカラーは先ほど先制したマテリアルに適用されます。この例では、カラーは赤と青に設定しました。
画像をクリックするとフルサイズで表示されます。
設定 カラー最小値 カラー最大値 Red 1.0 0.0 Green 0.0 0.0 Blue 0.0 1.0 - [Sprite Attributes (スプライト属性)] で、[Sprite Size Mode (スプライト サイズ モード)]、[Sprite Rotation Mode (スプライトの回転モード)]、および [Sprite UV Mode (スプライトの UV モード)] のチェックボックスを オフ にします。メッシュを使用しているので、これらの属性はこのエフェクトには必要ありません。
画像をクリックするとフルサイズで表示されます。
- 最初にメッシュを設定した時、メッシュのサイズを変更したかもしれません。一部のバルーンをほかのものより大きくして、大きさにある程度のバリエーションをも持たせることもできます。[Mesh Attributes (メッシュ属性)] にある [Mesh Scale Mode (メッシュ スケール モード)] を [Random Uniform] に設定します。[Mesh Uniform Scale Min (メッシュの均一スケールの最小値)] を 0.7 に、[Mesh Uniform Scale Max (メッシュの均一スケールの最大値)] を 1.0 に設定します。バルーン メッシュの代わりに球体を使用した場合、[Mesh Scale Mode (メッシュ スケール モード)] を [Random Non-Uniform] に設定して球体の形状に多少の不規則性を持たせることができます。
画像をクリックするとフルサイズで表示されます。
- Add Velocity in Cone (円錐で速度を追加) モジュールは、作成するエフェクトには必要ありません。バルーンを円錐状に広がらせたくはないからです。ごみ箱をクリックしてスタックからこのモジュールを削除します。
画像をクリックするとフルサイズで表示されます。
- Add Velocity モジュールでは、パーティクルのスポーンと同時にスポーンに動きを与えます。Add Velocity を選択し、プラス記号 (+) のアイコンをクリックして、[Particle Spawn] セクションに Add Velocity モジュールを追加します。
画像をクリックするとフルサイズで表示されます。
- このエフェクトは風船が放たれたように見えることを意図したエフェクトなので、パーティクルの速度にランダム性が必要です。[Velocity] 値フィールドの横にある下向き矢印をクリックして、[Random Range Vector (ランダムな範囲内のベクター)] を選択します。これによって、最小速度と最大速度のフィールドが追加され、各バルーンにこの範囲内から速度値を割り当てることができ、ランダム性を付加できます。
画像をクリックするとフルサイズで表示されます。
- [Velocity (速度)] の [Minimum (最小値)] と [Maximum (最大値)] を以下のように設定します。これにより、エフェクトの X 軸および Y 軸方向には小さな動きが、Z 軸方向にはより大きな動きが加わります。
画像をクリックするとフルサイズで表示されます。
設定 値 Minimum X: 15, Y: 25, Z: 50 Maximum X: 30, Y: 30, Z: 100 - Sphere Location モジュールは、スプライトがスポーンする場所の形状と原点を制御します。スプライトは球体形状でスポーンすることができ、半径を指定することでその球体形状のサイズも設定できます。[Sphere Radius (球体の半径)] の値を「200」に設定します。これにより、本物の風船が放たれたときのように、パーティクルがより拡散されるようになります。
画像をクリックするとフルサイズで表示されます。
Particle Update グループの設定を編集する
次に、Particle Update グループのモジュールを編集します。これらの動作はエミッタのパーティクルに適用され、それぞれのフレームを更新します。
- [System Overview] にある Particle Update グループをクリックし、[Selection (選択)] パネルで開きます。
画像をクリックするとフルサイズで表示されます。
- 通常は、オブジェクト対する重力の影響をシミュレートするには Gravity Force モジュールを使用します。また、これを使ってパーティクルにアクセラレーションを加えることもできます。[Gravity Force] の [X]、[Y]、[Z] の値をそれぞれ以下のように設定します。
画像をクリックするとフルサイズで表示されます。
設定 値 X 10 Y 10 Z 40 - Drag モジュールでは抗力をパーティクルに適用して、パーティクルの動きを遅くします。[Drag] の値を「1.0」に設定します。
画像をクリックするとフルサイズで表示されます。
- Scale Color モジュールは Fountain テンプレートの一部ですが、このエフェクトでは必ずしも必要ではありません。ゴミ箱 のアイコンをクリックして Scale Color モジュールを削除します。
画像をクリックするとフルサイズで表示されます。
最終結果
これで、Niagaraでメッシュ パーティクル エフェクトが完成しました。マテリアルの作り方、そのマテリアルにパーティクル カラーを適用する方法、パーティクルとしてスタティック メッシュを使用する方法を学びました。引き続きモジュールのオプションを調べてエフェクトを改良しましょう。
