GPUパーティクル

概要

GPUパーティクルに関する設定を行います。 この機能を有効にしたノードはエミッタとして動作し、GPUパーティクルを生成します。

通常のパーティクルがCPUで計算されるのに対し、GPUパーティクルはGPUで計算されます。 そのため、多数のパーティクルを効率よく扱えます。

../../_images/gpu_particles.png

GPUパーティクルは、モダンなグラフィックスAPIでのみ利用できます。

ターゲット サポート 備考
DirectX 9
DirectX 11 Shader Model 5.0 以降
DirectX 12
OpenGL
Vulkan
Metal
WebGL
ターゲット サポート 備考
Unity 今後サポート予定
Unreal Engine 今後サポート予定
Godot Engine 今後サポート予定

パラメーター

GPUパーティクルはGPU上で計算する都合上、通常のパーティクルより利用できる機能が限定されます。

使用する

GPUパーティクルを有効にします。

基本設定

GPUパーティクルの生成に関する基本設定です。 GPUパーティクルを開始すると、生成量 x 生存時間に応じた領域がパーティクルバッファから確保されます。

生成数

生成するパーティクルの総数です。 この数に達すると生成を停止します。

無限を有効にすると、無限にパーティクルを生成し続けます。 親パーティクルが破棄されるか、外部から停止要求を受けると生成を停止します。

生成量

1フレームあたりに生成するパーティクル数です。 値を大きくすると、より高い密度で生成されます。

生成開始時間

パーティクルの放出を開始するまでの待ち時間です。

生存時間

各パーティクルの生存時間です。 この値は、各種パラメータの変化速度にも影響します。

生成形状

パーティクルの放出元となる形状を設定します。 実際の形状は、親パーティクルのトランスフォーム(位置、回転、拡大率)の影響を受けます。

生成形状

放出元の形状タイプを設定します。 モデルをサポートしています。

点形状 線形状 円形状 球形状 モデル形状

点形状のパラメータ

点形状には追加パラメータはありません。

線形状のパラメータ

開始位置終了位置を結んだ線分上からパーティクルを生成します。 線の太さを大きくすると、円錐のような広がりを持たせることもできます。

円形状のパラメータ

円の軸を中心軸とする円周上からパーティクルを生成します。 半径は円の内側円の外側で決まります。

球形状のパラメータ

球の半径で決まる球面上からパーティクルを生成します。

モデル形状のパラメータ

使用するモデルのパスを指定すると、そのモデルのメッシュ表面からパーティクルを生成します。 必要に応じてサイズも指定できます。

位置

パーティクルの位置と移動に関する設定です。 パーティクルの位置は、ここで設定した値に加えて力場の影響も受けます。

移動方向

パーティクル生成時の進行方向ベクトルです。

拡散角度

生成時の移動方向に対して、どれだけランダムに拡散させるかを表す角度です。 0~180度の範囲で設定します。0度はランダム性はなく、90度は半球状に拡散し、180度は全方向に拡散します。

初期速度

パーティクル生成時の速さです。 初速度に影響します。 ランダム範囲を設定することができます。

速度減衰

移動中にかかる減衰です。 値を大きくすると、パーティクルは進むにつれて減速します。 ランダム範囲を設定することができます。

回転

パーティクルの向きと回転に関する設定です。 実際の見え方は、描画形状のビルボード設定によって変わります。 固定ではXYZが、Z軸回転ビルボードではZのパラメータが主に使われます。

初期角度

生成時の角度(オイラー角)です。 ランダム範囲を設定することができます。

回転速度

時間とともに加わる回転速度(オイラー角)です。 ランダム範囲を設定することができます。

拡大率

パーティクルの大きさを設定します。 選択したモードによって挙動が変わります。

  • 拡大率モードでは、設定した値で固定されます。

  • イージングモードでは、生存中に始点から終点へ滑らかに変化します。

単一拡大率

軸に依存しない固定の拡大率です。 ランダム範囲を設定することができます。

XYZ拡大率

XYZ各軸に個別に適用する固定の拡大率です。 ランダム範囲を設定することができます。

始点と終点 (単一)

軸に依存しないイージングの始点と終点の拡大率です。 ランダム範囲を設定することができます。

始点と終点 (XYZ)

XYZ各軸に適用するイージングの始点と終点の拡大率です。 ランダム範囲を設定することができます。

力場

外部からパーティクルに力を与える設定です。

重力 竜巻 乱流

重力

指定した方向に加速度を与えます。 下方向に限らず、上や横方向にも適用できます。 この方向は親パーティクルの姿勢の影響を受けません。

竜巻

指定した中心点回転軸を基準に、回転する力を与えます。 回転力吸引力を変更することで、竜巻が与える力の強さを調整できます。

乱流

シードスケール複雑度から生成したベクターフィールドによって、パーティクルにノイズ状の動きを与えます。 影響力を変更することで、乱流が与える力の強さを調整できます。

描画設定

描画時の共通設定です。

ブレンド

描画時のブレンド方式です。

深度書き込み

有効にすると深度を書き込みます。

深度テスト

有効にすると深度テストを行います。

描画形状

描画に使用する形状を設定します。

描画形状

次の3種類から選択します。

描画形状 説明
スプライト シンプルな四角形を描画します。
モデル 任意のユーザーモデルを描画します。
軌跡 パーティクルの移動軌跡をつないだ線を描画します。

配置設定

スプライトをパーティクルに対してどのように配置するかを指定します。

配置方法 説明
Z軸回転ビルボード スプライトは視点側を向きつつ、Z軸に沿って回転します。
移動方向ビルボード スプライトは視点側を向きつつ、Y+方向が移動方向を向くように回転します。
Y軸固定 スプライトはY軸に固定しつつ、視点側を向きます。
固定 スプライトの向きはパーティクルの回転に従います。

モデル

描画に使用するユーザーモデルを指定します。

軌跡の長さ

軌跡を構成する長さを指定します。 値を大きくすると、より長い軌跡を描けますが、軌跡バッファで使用するメモリも増えます。

形状サイズ

描画形状の基準サイズを指定します。 この値は拡大率のパラメータと乗算されます。 形状が軌跡の場合は太さに影響します。

描画色

パーティクルの色に関する設定です。

色継承

有効にすると、親パーティクルの色の影響を受けます。

全体色

パーティクルの色を設定します。

タイプ 説明
固定 変化しない固定色を設定します。
ランダム パーティクル生成時にランダムに決定される2色を設定します。
イージング 始点と終点の色を設定します。パーティクルの生存時間をかけて色が変化します。
Fカーブ RGBAの変化を描いたFカーブを設定します。
グラディエント 色の変化を描いたグラディエントを設定します。

エミッシブ倍率

パーティクルの輝度に掛ける倍率です。 この値は全体色のRGBに乗算されます。

フェードイン

パーティクル表示時にフェードインさせます。

フェードアウト

パーティクル消滅時にフェードアウトさせます。

描画マテリアル

描画に使用するマテリアルを設定します。

マテリアルタイプ

タイプ 説明
Unlit パーティクルの色をそのまま表示するマテリアル
Lighting 光源の影響を受けて陰影が付くマテリアル

色テクスチャ

描画に使用する色テクスチャです。

法線テクスチャ

マテリアルタイプがLightingのときに設定できます。 描画に使用する法線テクスチャです。