この記事の3行まとめ
- C&R Creative Studios、『【Maya : Bifrost】Vector Field を書き出して UE5 の Niagara で使用する』と題した記事を公開
- 「Vector Field」は、空間の点にベクトル(方向)とスカラー値(強さ)の情報を持たせ、パーティクルの複雑な挙動を実装できるもの
- Mayaの公式プラグイン「Bifrost」を用いてVector Fieldをスクリプト化し、UE5のNiagaraに適用するまでのフローを解説
クリーク・アンド・リバー社の開発スタジオ「C&R Creative Studios」は2026年1月6日(火)、『【Maya : Bifrost】Vector Field を書き出して UE5 の Niagara で使用する』と題した記事を、VFX制作チームの技術ブログで公開しました。
(画像はブログ記事より引用)
同記事では、空間上の各点にベクトル(方向)とスカラー値(強さ)の情報を持たせる「Vector Field」のデータを作成し、Unreal Engine 5(以下、UE5)のNiagaraで扱うまでのフローを解説。
データの作成・書き出しには、ノードベースでエフェクトなどを作成できるMayaの公式プラグイン「Bifrost」を使用しています。なお、記事中で使用されているMayaのバージョンはMaya 2024、BifrostのバージョンはBifrost 2.15.0.0です。
Vector Fieldによる各点のベクトルとスカラー値を可視化したもの(画像はブログ記事より引用)
Vector Fieldを設定することで、「この位置のパーティクルは右へ流す」「ここでは上へ吹き上げる」「ここでは渦を巻くように動かす」といった複雑な挙動を実装可能。
記事では「gradient_advection」を使用し、そのVolumeをもとにVector Fieldを作成する方法を解説しています。
「gradient_advection」を構成するノード。シミュレーションを直接行うわけではないため、「simulate_aero」より後のノードは削除しても問題ない(画像はブログ記事より引用)
まず、ボリュームが占める空間をバウンディングボックスとして取得し、それらの空間をどの程度細かく分割するかを設定してボクセルを作成。その後、UE5の座標軸にあわせてボクセルの配列順を変換します。
(画像はブログ記事より引用)
次に、Vector Fieldを書き出したBifrost Graphを開いたまま、MayaのScript Editorで特定のコードを実行。使用するコードはPythonで作成され、記事に記載されています。
実行後、使用しているMaya Sceneと同階層のフォルダに、作成したVector Fieldの情報が.FGA(Fluid Grid Asset)形式で保存されます。
作成したサンプルデータを「simulate_aero」から接続し、書き出しを行う(画像はブログ記事より引用)
FGAファイルを書き出したら、UE5のNiagaraにVector Fieldを適用。最後に、速度や加速度などを調整して完成です。
なお、NiagaraでVector Fieldを使用するには「Sample Vector Field」「Apply Vector Field」の2種のモジュールが必要とのこと。
完成したNiagaraパーティクル(画像はブログ記事より引用)
また、Vector Fieldはアンリアルエンジン独自の機能ではないことから、軸の変換などを考慮すれば他のゲームエンジンでも扱えることなどが語られています。
詳細はブログ記事をご確認ください。
『【Maya : Bifrost】Vector Field を書き出して UE5 の Niagara で使用する』VFX STUDIO BLOG | C&R Creative Studios