chatGPTにまとめてもらうために、単体で質問に出した対応表です。
どのまとめ方が使いやすいか不明なため、いったん別形式で出したものも記載しておきます。
Particle System → VFX Graph 対応表
■ 対応表(個別質問)
Particle System | VFX Graphでの対応 | 説明 |
---|---|---|
Duration | Spawn Context の Loop Duration または Spawner State (Loop Duration) |
エフェクトの1サイクルの長さを定義。 Spawn RateやBurstと組み合わせて再生時間を管理。 |
Looping (チェックON) |
Loop = true(デフォルト) | ループ再生。ループを止めたい場合は「Single Burst」や「Stop Event」で制御。 |
Prewarm | Spawn Context の「Prewarm」チェック or シミュレーション開始オフセット | 生成直後から安定した状態にしたい場合に使用。 |
Start Delay | Spawn Context 内の “Delay Before Loop” または “Spawn Event Delay” | エフェクトの再生を開始するまでの待機時間。 VFX Graphでは「Delay」ノードや「Constant Spawn Delay」プロパティで同等の効果を再現。 |
Start Lifetime | Initialize Particle 内の “Set Lifetime” | 各パーティクルの生存時間を設定。 固定値のほか、Random (Min–Max) ノードを接続すれば「ランダムな寿命」も再現可能。 寿命が尽きると自動で消滅します。 |
Start Speed | Initialize Particle 内の “Set Velocity (Random Direction)” または “Set Velocity Cone” |
パーティクルが生成された瞬間の速度を設定。 固定値なら「Set Velocity」、方向をランダムにしたい場合は「Set Velocity Random Direction」や「Cone」モードを使用して、放射状の動きを再現します。 |
3D Start Size | Initialize Particle 内の “Set Size” ノード(Vector3モード) | 各パーティクルのX・Y・Z軸ごとのサイズを個別に設定。 「Set Size」を右クリック → Convert to Vector3 に切り替えると、3軸それぞれに異なる値を入力可能。 例:ランダムな伸び方を再現する場合はRandom(Vector3) を接続します。 |
Start Size | Initialize Particle 内の “Set Size” ノード(Floatモード) | パーティクル全体の大きさを一括で設定。 スカラー値(1つの数値)で均等スケールを指定します。 「Random (Min–Max)」ノードを接続すれば、粒ごとにサイズをばらつかせることも可能です。 |
3D Start Rotation | Initialize Particle 内の “Set Axis Angle” ノード | パーティクル生成時のX・Y・Z軸それぞれの回転を設定。 「Set Axis Angle」で回転軸(Axis)と回転角度(Angle)を指定。 ランダムな3D回転を再現する場合は、Random Vector3 (0–1) を Axis に、Random Float (0–360°) を Angle に接続します。 |
Start Rotation | Initialize Particle 内の “Set Angle” ノード(Z軸回転) | パーティクル生成時の回転を1軸(Z軸)のみで設定。2Dやビルボード型パーティクルに使用されます。 値を固定すれば全粒が同方向を向き、Random (0–360°) を接続すればランダムな向きを再現可能です。 |
Flip Rotation | Initialize Particle 内の “Set Angle” ノード + Multiply(Random Sign)” | パーティクルの回転方向をランダムに反転させる設定。VFX Graphには直接の「Flip」機能はないため、Set Angle にランダムで +1 / -1 を掛ける処理(Random Sign)を追加して再現します。 例:Set Angle = BaseAngle × Random(−1, 1) とすることで、左右反転した回転を実現できます。 |
Start Color | Initialize Particle 内の “Set Color” ノード | パーティクル生成時の基本色を設定。固定色を指定するほか、Random Color や Gradient Sample を使えばランダムなカラーやグラデーションも再現可能。 例:Sample Gradient ノードにカラーバーを接続して、炎やマジックエフェクトの自然な色変化を作成できます。 |
Gravity Source(Gravity Modifier / Gravity設定) | Update Particle 内の “Add Force” ノード(Direction: Down) または “Gravity” Block | パーティクルに重力を与える設定。VFX Graphでは Add Force で重力方向(例:Y = -1)と強さを指定します。 シーンの重力を利用したい場合は、Gravity Block を追加すれば同様の効果が得られます。 例:Force = (0, -9.81, 0) で地球重力と同じ落下挙動を再現。 |
Gravity Modifier | Update Particle 内の “Add Force” ノード(Direction: Down × Custom Float) | パーティクルにかかる重力の強さを調整する設定。VFX Graphでは Add Force の力ベクトルを (0, -9.81, 0) × GravityScale のようにスケールして再現します。 例:GravityScale = 0.5 → 弱い重力、2.0 → 強い重力。パーティクルごとにランダムな重力を与えたい場合は Random (0.5–1.5) を掛けます。 |
Simulation Space | System Settings 内の “Space” プロパティ(Local / World) | パーティクルの座標系を決める設定。 Local:エミッター(オブジェクト)に追従して動く。 World:発生後はワールド空間に固定され、エミッターが動いても粒はその場に残る。 VFX Graphでは VFX Graph Inspector > System Settings > Space で切り替え可能。 |
Simulation Speed | System Settings 内の “Playback Speed” または Time ノードにスケールを掛ける | パーティクル全体のシミュレーション速度を調整する設定。 VFX Graphでは「Playback Speed」を変更することで、時間の進み方を速く/遅くできます。 また、ノードベースで制御したい場合は「Time」出力に係数を掛けることで部分的なスローモーション演出も可能です。 |
Delta Time | 組み込みノード “Delta Time”(自動処理) | 各フレーム間の経過時間(秒)を表す内部変数。VFX Graphでは明示的に設定する必要はなく、ほとんどの「Update」系ノードで自動的に参照されています。 独自の時間制御をしたい場合は、「Delta Time」ノードを使って力や速度に掛け合わせることで、フレームレートに依存しない動きを維持できます。 |
Scaling Mode | System Settings 内の “Scaling Mode”(Local / Hierarchy / Shape)に相当 → Transform Scaleとの連動で再現 | パーティクルがオブジェクトのスケールにどう反応するかを制御する設定。VFX Graphでは「System Settings」でローカルスケールを適用するかどうかを調整。通常は Local(オブジェクトの拡大縮小を反映)で再現します。 |
Play On Awake | デフォルトで “On Play” に自動実行(Spawn Context が常時有効) | シーン再生時に自動でエフェクトを再生する設定。VFX Graphでは明示的なチェックは不要で、デフォルトで「再生開始時に自動Spawn」します。 制御したい場合は、「Spawn Event」入力 を使って任意のタイミングで再生を開始/停止できます。 |
Emitter Velocity Mode | Initialize Particle 内で “Inherit Source Velocity” ノードを追加 | エミッター(発生元オブジェクト)の動きをパーティクル速度に反映させる設定。 Inherit Source Velocity ノードで親の移動速度を取得し、任意の係数を掛けて再現。例:0.5なら半分の速さで追従。 |
Max Particles | Spawn Context 内の “Capacity” | 設定 同時に存在できるパーティクルの上限数。VFX Graphでは「Capacity」で定義し、それを超えると古い粒子から消滅します。大量発生エフェクトではパフォーマンス管理の重要項目です。 |
Auto Random Seed | VFX Graph は自動的に乱数シード管理(手動設定は不要) | Particle Systemでの「自動ランダム再現」設定。VFX Graphは実行ごとに自動乱数を生成するため、基本的に同じ機能がデフォルトで有効。 再現性のある結果が必要な場合は、Seed を明示的に設定可能。 |
Stop Action | Spawn Context の “Stop Event” + Event Context(Output停止制御) | パーティクルの再生停止時に行うアクション設定。 VFX Graphでは「Stop Event」をトリガーしてパーティクルの生成を止めるか、特定の出力を非表示にするなどの制御を行います。 例:再生終了後に自動で破棄したい場合は「Stop Event → Kill Particle」。 |
Culling Mode | System Settings 内の “Culling Flags” | カメラ外でのパーティクル処理をどう扱うかを決める設定。VFX Graphでは Culling Flags により「Always Simulate(常時)」「Simulate When Visible(表示時のみ)」などを選択可能。パフォーマンス最適化に使用。 |
Ring Buffer Mode | Spawn Context 内の “Capacity”+“Recycling” オプション | 古いパーティクルを再利用する仕組み。VFX Graphでは「Capacity(最大数)」を超えた場合、自動的に古いパーティクルを上書きする挙動を設定できます。Recycling = true にするとRing Buffer的に動作します。 |
Emission | Spawn Context(Constant Spawn Rate / Burst)ノード群 | パーティクルの発生率を制御する基本設定。 VFX Graphでは Constant Spawn Rate(毎秒一定発生)と Burst(瞬間的な一斉発生)で再現。 例:Rate = 10 → 毎秒10粒、Burst = 30 → 1回で30粒。 |
Shape | Initialize Particle 内の “Set Position (Shape)” ノード | パーティクルの発生位置を定義する設定。VFX Graphでは「Set Position」ノードを使用し、Shape Type(Sphere / Cone / Box / Circle / Mesh など) を選択して配置形状を再現します。 さらに、Set Velocity (Cone) と組み合わせることで、発生方向や放射角度も同様に制御可能。 例: ・Sphere → 爆発エフェクトや魔法陣中心発生 ・Cone → 噴射や煙の放出 ・Mesh → モデル形状から発生(破片や分解演出など) |
Velocity over Lifetime | Update Particle 内の “Add Velocity” または “Set Velocity over Life” ノード構成 | パーティクルの生存中に速度を変化させる設定。 VFX Graphでは、時間経過に応じて速度を制御するために Age over Lifetime ノードを使用し、それを Multiply や Lerp に接続して動的に変化させます。 例: ・Add Velocity に Direction * Curve(Age/Lifetime) を接続 → 風や重力の影響でだんだん加速 ・Set Velocity over Life(カスタムグラフ)で曲線的な減速も再現可能。 |
Limit Velocity over Lifetime | Update Particle 内の “Clamp Velocity” ノード | パーティクルの速度が一定値を超えないように制限する設定。 VFX Graphでは Clamp Velocity ノードを使い、Speed Max(最大速度)を指定して、粒子が速くなりすぎないよう制御します。 例: ・Max Speed = 3 → どんな力を受けても秒速3以上にならない。 ・Dampen 値を加えると、上限に近づくほど緩やかに減速させることも可能。 |
Inherit Velocity | Initialize Particle 内の “Inherit Source Velocity” ノード | 発生元(エミッターや親オブジェクトなど)の動きをパーティクルに引き継ぐ設定。 VFX Graphでは Inherit Source Velocity ノードを使用し、親オブジェクトの移動速度 や 任意のSpawn Eventの発生元の速度 をパーティクル初期速度に加えることができます。■主なパラメータ: ・Mode:Linear / Directional / Current Transform Velocity ・Multiplier:影響の強さ(例:0.5で半分だけ継承)■例: ・キャラクターが走りながら出す煙に“走る速度”を反映したい場合 → このノードで実現可能。 |
Lifetime by Emitter Speed | Initialize Particle 内の “Set Lifetime” に、Emitter(または Source)速度を乗算して接続 | パーティクルの寿命を「エミッターの移動速度」に応じて変化させる設定。 VFX Graphには直接の「Lifetime by Emitter Speed」ノードはありませんが、カスタム接続で再現可能です。■再現手順: 1. Get Attribute: Source Velocity ノードでエミッター速度を取得。 2. 速度の長さ(Length)を取り、必要ならスケール係数を掛ける。 3. その結果を Set Lifetime の入力に接続。■例: ・動きの速いオブジェクトほど短い寿命にしたい → 1 / (Speed + 1) のように逆数で制御。 ・逆に、速いほど長生きにしたい → Speed * 0.2 のように直接乗算。 |
Force over Lifetime | Update Particle 内の “Add Force” ノード | パーティクルが生きている間、外力(風・重力・流れなど)を継続的に与える設定。 VFX Graphでは Add Force ノードを使用し、力の方向 と 大きさ(ベクトル) を指定します。■再現のポイント: ・Force に 定数ベクトル(例:Y = -9.81)を指定 → 重力風のような一定方向の力。 ・Force に Curve(Age/Lifetime) を掛ける → 時間経過で力を変化(例:最初は強く、後半弱く)。 ・風表現などで動的にしたい場合は、Noise や Curl Noise Force ノードを併用。■例: ・上昇する煙が風に流される → Add Force (X = sin(Time) * 0.5) ・火花が飛んだ後に徐々に落下 → Add Force (Y = -9.8 * Curve(Age)) |
Color over Lifetime | Update Particle 内の “Set Color over Life” 構成(Sample Gradient + Set Color) | パーティクルの寿命に応じて色を変化させる設定。 VFX Graphでは Sample Gradient ノードを使用して、Age / Lifetime(寿命の進行率) に基づいたカラーを取得し、それを Set Color に接続します。■再現のポイント: 1. Sample Gradient ノードを追加し、色のグラデーションを設定(Particle SystemのGradientに相当)。 2. Age / Lifetime ノードを入力として接続。 3. 出力したColorを Set Color ノードへ。■例: ・火花 → 赤 → 黄 → 消滅直前に透明 ・魔法エフェクト → 紫 → 青 → 白にフェード ■透明度(Alpha)も同じグラデーションで制御可能。 |
Color by Speed | Update Particle 内の “Get Velocity”+“Length”+“Sample Gradient”+“Set Color” ノード構成 | パーティクルの移動速度に応じて色を変える設定。VFX Graphではカスタムノード構成で簡単に再現できます。
■再現の流れ: ■例: ■補足: |
Size over Lifetime | Update Particle 内の “Set Size over Life” 構成(Sample Curve+Set Size) | パーティクルの寿命に応じてサイズ(スケール)を変化させる設定。 VFX Graphでは Sample Curve ノードを使い、Age / Lifetime(寿命進行率)をもとにサイズを制御します。■再現の流れ: 1. Age / Lifetime ノードで寿命割合(0〜1)を取得。 2. Sample Curve ノードでサイズカーブ(Particle Systemのカーブ相当)を作成。 3. その出力を Set Size ノードに接続。■例: ・煙 → 出始め小さく、時間とともに拡大。 ・火花 → 大きく飛び出してすぐ縮む。 ■応用: |
Size by Speed | Update Particle 内の “Get Velocity”+“Length”+“Remap”+“Set Size” ノード構成 | パーティクルの移動速度に応じてサイズを変える設定。 VFX Graphでは直接の「Size by Speed」ノードはありませんが、ノードを組み合わせて完全に再現できます。■再現の流れ: 1. Get Attribute: Velocity ノードでパーティクルの速度ベクトルを取得。 2. Length ノードで速度の大きさ(Speed)を計算。 3. Remap ノードで速度範囲(例:0〜10)を正規化(0〜1)。 4. Sample Curve または直接 Multiply を使ってサイズを算出。 5. Set Size ノードに接続して反映。■例: ・速い粒子 → 大きく、遅い粒子 → 小さく。 →「スピード感のある火花」や「飛沫の勢い表現」に最適。 ・逆に速いほど小さくしたい場合は、1 – Remap や Invert ノードを使用。 ■応用: |
Rotation over Lifetime | Update Particle 内の “Set Angle over Life” 構成(Sample Curve+Set Angle) | パーティクルの寿命に応じて回転角度を変化させる設定。 VFX Graphでは Sample Curve ノードを使って、Age / Lifetime(寿命進行率) に基づいた角度変化を制御します。■再現の流れ: 1. Age / Lifetime ノードで寿命割合(0〜1)を取得。 2. Sample Curve ノードで回転カーブ(Particle SystemのRotation Curveに相当)を作成。 3. その出力を Set Angle ノードに接続。■例: ・落ち葉 → 落下中にゆっくり回転。 ・火花 → 飛びながら徐々にスピン。 ■補足: |
Rotation by Speed | Update Particle 内の “Get Velocity”+“Length”+“Remap”+“Set Angle” ノード構成 | パーティクルの移動速度に応じて回転量を変える設定。 VFX Graphでは専用ノードはないものの、Velocityを利用したカスタム構成で簡単に再現可能です。■再現の流れ: 1. Get Attribute: Velocity ノードでパーティクルの速度を取得。 2. Length ノードで速度の大きさ(Speed)をスカラー値に変換。 3. Remap ノードで速度範囲(例:0〜10)を正規化(0〜1)。 4. Sample Curve または Multiply ノードで回転量を調整。 5. Set Angle ノードに接続して反映。■例: ・速い粒子ほど速くスピン → 「火花」「煙の渦」などの勢い表現に最適。 ・遅い粒子はほとんど回転しないようにして、自然な動きを演出。 ■補足: |
External Forces | Update Particle 内の “Add Force” or “Sample External Field” ノード構成 | Particle Systemの「External Forces」は、風・重力・フィールドなどの外部影響を受ける設定。VFX Graphでは、外部フィールド(Field)を明示的にノードで受け取る形で再現できます。
■再現の方法(2通り): ② 他のシミュレーションやFieldコンポーネントから影響を受ける場合 ■例: ■補足: |
Noise | Update Particle 内の “Add Turbulence” または “Curl Noise Force” ノード | パーティクルの動きに乱流(ノイズ)を与える設定。 VFX Graphでは Add Turbulence または Curl Noise Force ノードを使って、自然な揺らぎや流れを再現します。■主な対応方法: 1. Add Turbulence ノード: ・Particle Systemの「Noise」モジュールに近い挙動。 ・位置ベースのノイズで、粒子がフワフワと動く。 ・設定項目:Amplitude(強さ)、Frequency(細かさ)、Octaves(複雑さ)。2. Curl Noise Force ノード: ・より滑らかで連続的な乱流ベクトルを生成。 ・煙や炎など、流体的な動きに最適。 ・時間に Time を入力することで動的ノイズを作成可能。 ■例: ■補足: |
Collision | Update Particle 内の “Collide with Depth Buffer” または “Collide with Signed Distance Field (SDF)” ノード | パーティクルがシーン内のオブジェクトと衝突する設定。VFX Graphでは、物理的な衝突をGPU上で処理するための専用ノードを使用します。
■主な対応方法: 2. Collide with Signed Distance Field (SDF) ノード(3D空間衝突) ■例: ■補足: |
Triggers | Event Context(Trigger Event)+Collider(SDF or Depth)+Event Output ノード構成 | パーティクルが特定の領域やオブジェクトに触れたときにイベントを発生させる設定。 VFX Graphでは「トリガー専用モジュール」は存在しませんが、衝突イベント(Collision Event)やカスタムEvent出力を組み合わせることで、Particle SystemのTriggers機能を再現できます。■再現の流れ: 1. Collide with SDF または Collide with Depth Buffer ノードで衝突を検知。 2. 衝突時に Event Context(On Collision) を発生させる。 3. Event Output ノードを使って、別のVFX SystemやSub-Graphにイベントを送信。 4. Eventを受けた側で、例えば「色を変える」「爆発を発生させる」「別のパーティクルを生成」などを実行。■例: ・火花が地面に当たると煙が出る。 ・弾が敵に当たると爆発エフェクトを生成。 ・光の粒が特定エリアに触れると色が変化。 補足: |
Sub Emitters | Event Context(On Death / On Collision / Custom Event)+Spawn Context | パーティクルの特定のタイミングで別のパーティクルを生成(連鎖生成)する設定。 VFX Graphでは、「Event」システムを使って Particle System の Sub Emitters(親パーティクルからの子パーティクル発生)をより柔軟かつ高品質に再現できます。■再現の流れ: 1. イベントの発生元を定義 ・Event: On Death → 親パーティクルが消える瞬間に発生 ・Event: On Collision → 衝突した瞬間に発生 ・Event: Custom → 任意タイミングで発生2. Event Output ノード を使って、イベントを別の VFX Graph または同一Graph内の Spawn Context に送信。 3. Spawn Context で、イベントをトリガーとして受け取り、子パーティクルを生成。 ■例: ■補足: |
Animation | Initialize Particle 内の “Set Texture Index” + Update Particle 内の “Flipbook Player” ノード構成 | スプライトシート(1枚のテクスチャに複数フレームが並んだアニメーション)を使って、パーティクルごとにアニメ再生する設定。 VFX Graphでは、専用ノードによってより自由な制御が可能です。■再現の基本構成: 1. Texture Asset にスプライトシート(例:4×4のフレーム)を設定。2. Set Texture Index ノード(Initialize) ・再生開始フレームを指定(例:ランダム再生にする場合 Random ノードを接続)。 3. Flipbook Player ノード(Update) ■例: ■補足: |
Lights | “Output Particle (Lit Quad/Output Particle Point)”+「Light」ノード or Light Output Context | Particle Systemでの「ライトを各パーティクルに付与する」機能は、VFX Graphではライト出力ノードまたはライト属性を持つ出力コンテキストで再現可能です。
■再現の方法(2パターン) ②実ライト出力(物理ライトとして出力) ■主な設定項目(Light Output) ■例: ■補足: |
Trails | Output Particle Quad (Line Mode) または “Output Particle Strip” コンテキスト | Particle Systemの「Trails(軌跡)」は、VFX Graphでは 「パーティクルストリップ(Particle Strip)」システムを使って再現します。これにより、パーティクルが動いた軌跡やラインをなめらかに描画できます。
■基本構成: ②Initialize Context(Strip 用) ③Update Context ④Output Context ■主な設定項目(Output Strip) ■例: ■補足: |
Custom Data | Exposed Property(黒板)+ Set/Get Attribute ノード(Custom Attribute) | Particle Systemの「Custom Data」は、各パーティクルに任意の追加データを持たせる機能です。 VFX Graphではこれを、**独自の属性(Custom Attribute)**を定義して扱う形で再現します。■基本の考え方 Particle Systemでは「Custom1」「Custom2」に Vector や Color を入れることができますが、 VFX Graphではより柔軟に、**任意の名前・型(float, vector2, vector3, color など)**で拡張可能です。■設定手順 ①黒板(Blackboard)にプロパティを追加 ・VFX Graphの上部にある「+」ボタン → 「Vector3」などを追加。 ・名前を CustomSpeed や ExtraColor のように定義。 ・「Exposed」にチェックを入れると、C#やInspectorから制御可能。 ②Initialize Context で設定(Set Attribute) ③Update / Output Context で利用(Get Attribute) ■例: ■補足: ■ポイント: |
Renderer | Output Particle Context(Quad / Mesh / Point / Line / Strip など) | Particle System の「Renderer」は、パーティクルの見た目(描画方法)を決める部分です。 VFX Graphでは「Renderer」という単一設定ではなく、**Output Context(出力コンテキスト)**として明確に分離されています。これにより、描画タイプやマテリアル設定をより柔軟にコントロールできます。■基本構造: VFX Graphでは、「Spawn → Initialize → Update → Output」という流れの中で、最終的に Output Context が描画を担当します。■代表的な Output タイプ(=Rendererの種類) ↓ |
– – – – – | – – – – – | – – – – – |
Output Particle Quad | 一般的なビルボード表示(常にカメラに向く) | Billboard Renderer |
Output Particle Mesh | メッシュオブジェクトを使用した3Dパーティクル | Mesh Renderer |
Output Particle Point | 超軽量な点描画(GPU負荷が低い) | 低負荷パーティクル |
Output Particle Line / Strip | 軌跡表現(トレイルや光跡) | Trail Renderer |
Output Particle Light | ライト発生 | Light Module |
Output Particle Decal | サーフェスに投影するエフェクト | Decal Renderer |
Output Particle Cube / Sphere | 立体的な基本形状(プロトタイプ用途) | MeshRenderer(Primitive) |
■ 主な設定項目(Output Context)
- Color / Alpha:発光色・透明度。Set Color ノードなどで制御。
- Size / Scale:パーティクルサイズ。Size over Life などで変化。
- Material:使用するシェーダー/マテリアルを指定。HDRP/URP両対応。
- Blend Mode:加算・アルファブレンド・乗算など。
- Soft Particle Fade:カメラ距離によるフェード。
- Motion Vector / Shadows:影やモーションブラーの対応有無。
■ 例:
- 炎や爆発 → Output Particle Quad(加算ブレンド)
- 破片や火花 → Output Particle Mesh(Lit Shader)
- 光の筋やレーザー → Output Particle Strip Ribbon
- 壁面に焼け跡を描く → Output Particle Decal
■ 補足:
- Particle System の「Render Alignment(Billboard / Stretch / Mesh)」などは、
VFX Graph の Output Context 内で “Facing Mode” として細かく指定可能。 - VFX Graph では Output を複数同時に使える ため、
ひとつのシミュレーションで「メッシュ+ライト+デカール」を同時に出力するような複合表現が可能です。 - URP/HDRPでは、Outputごとに異なるシェーダーグラフ(Shader Graph)をリンクさせることができ、
完全にカスタム見た目のVFXを構築できます。
■ まとめ:
VFX Graphの「Output Context」は、Particle Systemの「Renderer」よりも強力で、
ビルボード・メッシュ・ライト・デカール・トレイルなどを自在に組み合わせられる
“描画の設計ツール”として進化しています。
【完全統合版:デザイナー向け】Particle System → VFX Graph 対応表
chatGPTにまとめるよう頼んだところ、前項までの質問経緯からデザイナー向けに簡潔なまとめをしました。
■ 対応表(要約版)
Particle System | VFX Graphでの対応 | わかりやすい説明 |
---|---|---|
Duration | Spawn Context の Duration パラメータ | パーティクルの「1サイクルの長さ」。VFXでは「Spawn Rate」+「Loop設定」で制御します。 |
Start Delay | Spawn Delay(Delayノード or Timeline制御) | 再生開始を遅らせたい場合に使います。 Spawn Contextの入力前に Delay ノードを挟む形。 |
Start Lifetime | Initialize → Set Lifetime | 各パーティクルが生存する時間。 VFXでは個別にランダム設定可能。 |
Start Speed | Initialize → Set Velocity (Random Direction or Vector) |
パーティクルの初速。 数値またはベクトルで方向とスピードを設定。 |
Start Size | Initialize → Set Size(Uniformスカラー) | 一律サイズ設定。 |
3D Start Size | Initialize → Set Size(Vector3) | XYZ方向で別々の大きさ設定。伸びた煙・楕円形などに利用。 |
Start Rotation | Initialize → Set Angle (1軸) | 2Dビルボードなどの単純な回転。 |
3D Start Rotation | Initialize → Set Angle (Vector3) | 3軸の回転(3Dメッシュ対応)。 |
Flip Rotation | Multiply Angle by -1 | 回転方向を反転。右回り↔左回りの切り替え。 |
Start Color | Initialize → Set Color | 開始色。Color over Lifeで経時変化も可。 |
Gravity Modifier | Update → Add Force (Vector3.down * 値) | 重力を加える。世界重力を反映したい場合は Delta Time と組み合わせる。 |
Gravity Source | Vector Field / Custom Force Field | 特定の点・方向に重力を引き寄せたい場合。 |
Simulation Space | Local / World Space(Graph Property) | ローカル空間 or ワールド空間。親オブジェクトに追従するかを決める。 |
Simulation Speed | Update全体のTimeスケール | パーティクル挙動の時間を早く/遅く進める。 |
Delta Time | 内部ノード(自動) | フレーム間の時間。ほとんどの動作で自動利用される。 |
Scaling Mode | Graph全体スケール or Transform Scale反映設定 | 親のスケール影響を受けるかどうかを指定。 |
Play On Awake | Spawn ContextがGraph開始と同時に動作 | デフォルトで自動再生。停止したい場合はC#制御で制御可能。 |
Emitter Velocity Mode | Inherit Velocity(Spawn → Attribute: Source Velocity) | 発射元オブジェクトの動きを引き継ぐ。 |
Max Particles | Spawn Context内のCapacity | 同時存在できるパーティクル上限。 |
Auto Random Seed | 自動ランダム化(デフォルトON) | 毎回違う結果を得る。固定化したい場合はRandomSeedを指定。 |
Stop Action | Event On Complete + Action設定 | パーティクル終了時の動作。例:消える、別イベント発火など。 |
Culling Mode | System Stateによる自動停止(距離や視野外) | UnityのCullingを継承。特別な設定は不要。 |
Ring Buffer Mode | Looping Buffer Mode (Spawn) | 古いパーティクルを再利用。ループエフェクトで使用。 |
Emission | Spawn Rate(Constant/Curve/Custom) | 発生量。時間・距離・イベントで制御可能。 |
Shape | Spawn Shape(Sphere/Cone/Box/Custom Mesh) | 放出形状。MeshやTextureからも放出可能。 |
Velocity over Lifetime | Update → Add Velocity over Life | 寿命に応じて速度を変化。 |
Limit Velocity over Lifetime | Clamp Velocity ノード | 速度制限をかける。空気抵抗のような効果。 |
Inherit Velocity | Source Attribute “Parent Velocity” | 発射元の動きを継承。 |
Lifetime by Emitter Speed | Spawn Rate by Speed / Dynamic Attribute Link | エミッターの動きで寿命変化。 |
Force over Lifetime | Update → Add Force | 継続的に力を加える。風・重力・渦などに。 |
Color over Lifetime | Update → Color over Life(Gradient) | 時間経過による色変化。 |
Color by Speed | Speed Attribute → Gradient Evaluation | 速度によって色を変える。 |
Size over Lifetime | Update → Set Size over Life | 寿命に応じてサイズ変化。 |
Size by Speed | Speed Attribute → Size Mapping | 速さでサイズを変える。 |
Rotation over Lifetime | Update → Add Angle over Life | 時間に応じて回転。 |
Rotation by Speed | Velocity Magnitude × Rotation | 動きに比例して回転速度を変化。 |
External Forces | Vector Field Force / Wind | 外部フィールドや風エフェクト。 |
Noise | Update → Add Turbulence / Noise Field | 揺らぎや自然な乱れ。パーリンノイズなど。 |
Collision | Collision Context(Plane / Sphere / Signed Distance Field) | 他オブジェクトとの衝突。反射・減速可。 |
Triggers | Event Context(On Collision / On Enter / On Exit) | 衝突検出をイベント発生に利用。 |
Sub Emitters | Event Context(On Death / On Collision)+Spawn Context | 他パーティクルを生成(花火・爆発など)。 |
Texture Sheet Animation | Initialize: Set Texture Index + Update: Flipbook Player | スプライトアニメ。フレームを自動再生。 |
Lights | Output Particle Light / Emissive Color | 各パーティクルが発光。リアルライト出力も可能。 |
Trails | Output Particle Strip / Ribbon | 軌跡を描く。光線や尾を表現。 |
Custom Data | Custom Attribute(Set/Get Attribute) | 任意の追加情報を持たせて挙動に反映。 |
Renderer | Output Context(Quad / Mesh / Light / Decal / Strip) | 表示方法を決定する最終段階。複数同時使用も可能。 |
■ VFX Graphの構成の全体像(デザイナー向けイメージ)
└─ Emission Rate / Shape / Delay / Loop
↓
[ Initialize Particle ]
└─ Size / Lifetime / Color / Velocity / Custom Attribute
↓
[ Update Particle ]
└─ Forces / Noise / Rotation / Color over Life / Collision
↓
[ Output Particle ]
├─ Quad(通常表示)
├─ Mesh(3D破片)
├─ Light(光)
├─ Strip(軌跡)
└─ Decal(地面焼け跡など)
■ 特徴まとめ
- Particle Systemの各モジュールが「VFX Graph」では ノードやコンテキスト単位に細分化。
- すべての要素は「Spawn → Initialize → Update → Output」の流れに沿って構築。
- イベント制御・カスタム属性・シェーダー連携により、表現力が格段に向上。
- Unity 6では Flipbook / Light / Strip / Event の安定性・効率が大幅に改善。