Version: Unity 6.0 (6000.0)
言語 : 日本語
パーティクルシステム
パーティクルシステムの作成と表示

パーティクルシステムソリューションの選択

パーティクルシステムを作成するときに柔軟に対応できるよう、Unity には 2 つのソリューションがあります。プロジェクトが Compute Shader をサポートするプラットフォームをターゲットにしている場合、Unity では両方を同時に使用することができます。このパーティクルシステムソリューションが以下の 2 つです。

  • ビルトインのパーティクルシステム: C# スクリプトから、システムとそれに含まれるパーティクルへの完全な読み取り/書き込みアクセスを提供するソリューションです。Particle System API を使用して、パーティクルシステムのカスタム動作を作成できます。
  • Visual Effect Graph: GPU 上で実行できるソリューションで、数百万のパーティクルのシミュレーションを行い、大規模なビジュアルエフェクトを作成できます。Visual Effect Graph には、自由自在にカスタマイズできるビジュアルエフェクトの作成に役立つ、ビジュアルグラフエディターも含まれています。

以下の表は、2 つのパーティクルシステムソリューションの主な違いを比較しています。各ソリューションの詳細については、ビルトインのパーティクルシステムまたは Visual Effect Graph を参照してください。

機能 ビルトインパーティクルシステム Visual Effect Graph
レンダーパイプラインの互換性 ビルトインレンダーパイプライン、ユニバーサルレンダーパイプライン、HD レンダーパイプライン ユニバーサルレンダーパイプライン、HD レンダーパイプライン
可能なパーティクル数 数千 数百万
パーティクルシステムのオーサリング Inspector で Particle System コンポーネントを使用する、簡単なモジュラー式のオーサリングプロセスです。各モジュールは、パーティクルの定義済みの動作を表します。 グラフビューを使用する高度にカスタマイズ可能なオーサリングプロセス。
物理演算 パーティクルは Unity の基礎となる物理演算システムと相互作用します。 パーティクルは、Visual Effect Graph で定義する特定の要素と相互作用できます。例えば、パーティクルは深度バッファと相互作用します。
スクリプトの相互作用 C# スクリプトを使用して、ランタイムにパーティクルシステムを完全にカスタマイズできます。システム内の各パーティクルを読み取り/書き込みし、衝突イベントに応答できます。Particle System コンポーネントは再生コントロール API も提供します。つまり、スクリプトを使用してエフェクトを再生および一時停止し、カスタマイズしたステップサイズでエフェクトをシミュレーションできます。 グラフのプロパティを公開し、C# スクリプトでそれらにアクセスして、エフェクトのインスタンスをカスタマイズできます。イベントインターフェースを使用して、グラフが処理できる添付データとともにカスタムイベントを送信することもできます。Visual Effect コンポーネントは再生コントロール API も提供します。つまり、スクリプトを使用してエフェクトを再生および一時停止し、カスタマイズしたステップサイズでエフェクトをシミュレーションできます。
フレームバッファ いいえ HD レンダーパイプライン (HDRP) で、カラーバッファと深度バッファにアクセスできます。例えば、カラーバッファをサンプリングしてその結果からパーティクルの色を設定したり、深度バッファを使用して衝突をシミュレーションしたりできます。
パーティクルシステム
パーティクルシステムの作成と表示