ナイアガラでリボン エフェクトを作成する

このドキュメントでは、ナイアガラを使用してリボン ビジュアル エフェクトを作成する方法を説明します。

Windows
MacOS
Linux
Prerequisite Topics

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

前提条件:ここでは、ナイアガラ プラグインのコンテンツに含まれている DefaultRibbonMaterial を使用します。ただし、すでにチュートリアル「ナイアガラでメッシュ パーティクル エフェクトを作成する 」が完了している場合は、そこで使用した M_Balloon マテリアルを使用することができます。

自然現象のシミュレーションは簡単ではありません。特にスプライトまたはメッシュ ベースのパーティクルを使用して煙や飛行機雲などを再現するのは困難な作業です。Ribbon Emitters (リボン エミッタ) はこのようなオブジェクトのシミュレーションに最適なソリューションです。このチュートリアルでは、ワールドにリボンスタイルのパーティクル エフェクトを継続的に適用するようナイアガラ エミッタを設定する方法を紹介します。

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

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

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

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

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

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

  3. [Templates (テンプレート)][Simple Sprite Burst (シンプル スプライト バースト)] を選択します。

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

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

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

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

    Name New System

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

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

レンダラを変更する

グループはスタック内の最後にありますが、希望どおりにエフェクトを表示させるためにはいくつかの変更を加える必要があります。元のテンプレートではスプライト レンダラを使用しますが、このエフェクトにはリボン レンダラが必要です。

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

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

  2. リボン エフェクトを作成するには Ribbon Renderer モジュールが必要です。しかし、テンプレートに含まれているのは Sprite Renderer モジュールのため、ゴミ箱 のアイコンをクリックして Sprite Renderer を削除します。

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

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

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

  4. デフォルトでは、目的のマテリアルが表示されません。[Material] のドロップダウンをクリックし、[View Options (表示オプション)] を選択してオプションのリストを開きます。[Show Engine Content (エンジン コンテンツを表示)][Show Plugin Content (プラグイン コンテンツを表示)] のボックスにチェックを入れます。これで、マテリアルが表示されるようになりました。

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

  5. Material のドロップダウンをクリックして DefaultRibbonMaterial を選択します。

    チュートリアル「ナイアガラでメッシュ パーティクル エフェクトを作成する 」を完了している場合は、代わりに M_Balloon マテリアルを選択することができます。その場合は、DefaultRibbonMaterial で作成した半透明のリボンではなく、不透明なリボンが表示されます。

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

  6. RibbonSystem をレベル内にドラッグします。

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

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

まず 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 モジュールは、エミッタが有効な間、パーティクルのストリームを継続して作成します。このモジュールは、Simple Sprite Burst テンプレートに含まれています。[Spawn Rate (スポーン率)] を「100」に設定します。

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

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

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

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

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

  2. Initialize Particle モジュールを展開して、ゴミ箱 のアイコンをクリックしてモジュールを削除します。リボンの初期化には別のモジュールを使用するため、このモジュールは必要ありません。

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

  3. Initialize Ribbon モジュールには、[Initialize Particle] モジュールと同様にいくつかのパラメータを 1 つのモジュールにまとめる機能があります。Particle Spawnプラス 記号 (+) をクリックして [Initialize] > [Initialize Ribbon] を選択します。

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

  4. Point AttributesLifetime パラメータを確認します。このパラメータでは、パーティクルが消滅するまでの表示時間を指定します。そこで、[Lifetime] を「5」に設定します。

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

  5. [Mass (質量)] パラメータを「10」に設定します。この値はリボンの広がり具合と落下速度に影響します。

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

  6. Color パラメータの R (赤色) の値を 1 に設定します。他の値は 0 のままにしておきます。必要に応じて後で色は変更できます。

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

  7. Ribbon AttributesRibbon Width10 に設定します。

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

  8. リボンをらせん状に回転させるには、Torus Location モジュールを追加します。Location モジュールは、パーティクルがスポーンする場所の形状を制御します。Particle Spawn の プラス 記号アイコン (+) をクリックして [Location] > [Torus Location] を選択します。

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

  9. ShapeTorus Mode のドロップダウンをクリックして Ring を選択します。

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

  10. Large Radius の値を 50 に設定します。Large Radius では、基本となるリング形状の大きさを指定します。

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

  11. Distribution にある Torus Distribution Mode のドロップダウンをクリックして Direct を選択します。

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

  12. U Position パラメータは、リング形状の位置を指定します。Emitter Attributes パネルの Parameters セクションを展開します。Emitter.Age パラメータを Selection パネルにドラッグすると、そのパラメータを使用できるフィールドが緑の点線で囲まれます。Emitter.Age パラメータを値にドロップします。これにより、リボンは動きのないリングのように回転しますが、次の手順でこれを変化させます。

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

  13. これから、リボンにベロシティを追加します。Particle Spawn の プラス 記号アイコン (+) をクリックして [Velocity] > [Add Velocity from Point] を選択します。

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

  14. Velocity Strength の値を 50 に設定します。これで、リボンがらせん状に回転し始めます。

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

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

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

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

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

  2. このエフェクトは単色のため、Scale Color モジュールは不要です。ゴミ箱 のアイコンをクリックしてモジュールを削除します。

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

  3. Acceleration Force モジュールを追加します。この設定により重力がシミュレートされて回転するリボンが落下します。Particle Updateプラス 記号アイコン (+) をクリックして [Forces] > [Acceleration Force] を選択します。

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

  4. ナイアガラでは新しいモジュールをグループのスタックの下部に追加するため、「モジュールの依存関係が解決していません」というエラーが発生します。これは、Acceleration Force モジュールが Solve Forces and Velocity モジュールの後に配置されたことが原因のエラーです。[Fix Issue (問題を解決)] ボタンをクリックしてモジュールを再配置してエラーを解決します。

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

  5. Set the Z value of the AccelerationZ の値を -200 に設定します。Z をプラスの値に設定するとリボンは上向きに回転します。マイナスの値にすることで、リボンは下向きに放物線を描くようになります。

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

最終結果

お疲れさまでした。ナイアガラのリボン エフェクトが作成できました。このビデオでは左側に DefaultRibbonMaterial を使用したリボン エフェクトが表示されています。右側も同じリボン エフェクトですが、こちらは M_Balloon テクスチャを使用しています。

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