渋谷ほととぎす通信

新しいこと、枯れたこと問わずサムザップ大庭が興味を持ったものを調査、生活の効率を求める完全趣味の技術ブログ。基礎を大事にしています。※あくまで個人ブログであり所属組織とは関係ありません

【Unity】Universal Render PipelineでVisual Effect Graphの始め方(ポストエフェクト付き)


High Definition Render Pipeline(以下 : HDRP)使用時にはVisual Effect Graph(以下 : VFXGraph)はデフォルトでくっついてきますので、特に追加の準備をすることはありません。一方、Universal Render Pipeline(以下 : URP)使用時にはデフォルトでインストールされるわけではないので、本記事ではURP環境におけるVFXGraphのはじめ方についてまとめます。


※先日モバイル実機(Pixel3a)でVFXGraphデビューしました。


f:id:esakun:20201018233059p:plain:w450

上図の用にURPのテンプレートを使用してプロジェクトを作成しているということを前提に話を進めていきます。

PackageManagerからインストール

f:id:esakun:20201018235205p:plain:w450

HDRPと違ってURPの場合はVFXGraphは未インストールのため、PackageManagerからインストールします。


基本的にはここで終了なのですが、HDRPで使用する際はポストエフェクトが最初からかかっててキレイなパーティクルが何もしなくても作られます。

しかしURPの場合、新規でシーンを作成するとポストエフェクトは設定されていないので、自分で有効化させる必要があります。


そこでURP環境でポストエフェクトを有効化させます。

URPのポストエフェクトのアクティブ化について

URPには最初からポストエフェクトがインストールされています。 post-processing stack V3(以下 : PPSv3)です。

f:id:esakun:20201018235802p:plain:w450

ちなみに、上キャプチャのPackageManager内のPostProcessingは、post-processing stack V2なので注意です。こちらはビルトインレンダリングパイプラインで使用できますが、URP環境では使えません


Volumeコンポーネント

URP環境でポストエフェクトを使用するためには、Volumeコンポーネントを適当なGameObjectにAddComponentします。

f:id:esakun:20201019000122p:plain:w450

VolumeコンポーネントにVolume Profileというポストエフェクトの設定が書き込まれたScriptableObjectが必要です。


Newボタンをクリックして作成します。

f:id:esakun:20201019000216p:plain:w450 Add Overrideボタンをクリックしてポストエフェクトを追加していきます。上キャプチャはBloomを追加しています。

カメラの設定

まだこのままではポストエフェクトは反映されません。

f:id:esakun:20201019000740p:plain:w450 最後にPost Processingにチェックを入れてポストエフェクトが反映されます。


ポストエフェクトなし f:id:esakun:20201019001006p:plain:w450


ポストエフェクトあり f:id:esakun:20201019001020p:plain:w450

環境 

  • Unity2020.1.6f1
  • macOS Catalina 10.15.5
  • Visual Effect Graph 8.2.0