3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Unity VFXGraphのノード基礎

Last updated at Posted at 2024-03-08

はじめに

UnityのVFX Graphは、リアルタイムで高品質なビジュアルエフェクトを作成するためのツールです。
従来のParticleSystemと異なりGPUベースで実行されるため、リッチな表現を簡単に実行できます。また、ノードベースのシステムを使用しており、プログラミングなしにビジュアルエフェクトを作成できる点も特徴です。
以降ではVFX Graph入門者に向けて、いくつかの基本的な概念を説明します。

参考

VFX Graphの基本概念

1. ノード

VFX Graphでは、ノードはエフェクトのビルディングブロックです。これらは様々な種類があり、パーティクルの生成、色の変更、動きの制御など、特定の操作を表します。ノードは入力を受け取り、処理を行い、結果を出力します。

2. エッジ

ノード間の接続をエッジといいます。これにより、ノード間でデータが流れ、エフェクト全体が形成されます。エッジはノードの出力から別のノードの入力へとドラッグして作成します。

3. コンテキスト

コンテキストは、ノードが実行される環境を定義します。VFX Graphには、主にInitializeUpdateOutputの3種類のコンテキストがあります。Initializeはパーティクルの生成時に一度だけ実行され、Updateは毎フレームパーティクルの動作を更新するために使用されます。Outputコンテキストは、最終的なパーティクルのレンダリング方法を定義します。

4. ブロック

ブロックは、特定のコンテキスト内での操作を表すノードの一種です。例えば、Initializeコンテキスト内のブロックはパーティクルの初期位置や速度を設定し、Updateコンテキスト内のブロックはパーティクルの動きや寿命の管理を行います。

4.オペレーター

オペレーターは、値の計算やデータの変換を行うノードです。例えば、数学的な演算を行ったり、ベクトルの計算をしたりします。オペレーターを使用して、エフェクトの振る舞いをより細かく制御し、ブロックに入力するデータを動的に生成することができます。

6.プロパティ

プロパティは、エフェクトの外部から制御できるパラメータです。ユーザーがインスペクターウィンドウからアクセスして値を変更できるようにすることで、同じエフェクトを異なる状況やオブジェクトに再利用する際に柔軟性を提供します。プロパティは、エフェクトのカスタマイズや再利用性を高める重要な概念です。

イベント

イベントは、エフェクトの特定のアクションをトリガーするシグナルです。ゲームオブジェクトが特定の位置に到達したとき、ユーザーが特定のアクション

基本構成の中身

1. Spawn ノード

particleを生み出すためのノードです。
画像だと、1秒間に16個のparticleを生みだすことになります。

2. Initialize ノード

particleを初期化するためのノードです。
画像だと、Set Velosity Rondomブロックで、Particleの初期速度、Set Lifetime RomdomでParticleが表示される寿命を決めます。

3. Update ノード

particleを更新して動きを決めるノード

3. Output ノード

particleをレンダリングするためのノード
画像だと、Face Camera Planeでparticleの向き、Set Size over Lifeで大きさ、Set Color over Lifeでカラーを決めます。

VFX Graphの使用開始

  1. Visual Effect Graphアセットの作成: プロジェクトウィンドウで右クリックし、Create > Visual Effects > Visual Effect Graphを選択します。

  2. VFX Graphを開く: 作成したVFX GraphアセットをダブルクリックしてVFX Graphエディタを開きます。

  3. コンテキストの追加: エディタの空のスペースで右クリックし、必要なコンテキスト(例:Initialize Particle System)を選択して追加します。

  4. ブロックの追加: コンテキスト内で右クリックし、追加したいブロック(例:Set PositionSet Velocity)を選択します。

  5. ノードの接続: 必要に応じて、ノード間をエッジで接続して、データフローを構築します。

  6. エフェクトのプレビュー: VFX Graphアセットをシーンに配置し、Unityのプレイモードでエフェクトを確認します。

まとめ

 以上でVFX Graphの基本的な要素の概要を把握できました。これらのコンポーネントを組み合わせることで、独自のダイナミックなビジュアルエフェクトを作成できるようになります。実際にVFX Graphを使い始めて、様々な参考資料を見ると頻出するので、これらの要素を忘れずに活用してみましょう。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?