2021/04/20追記:本記事の内容は古くなっています。Post-Processing Stack V2の利用を検討してください。
STYLYでUnityのPost-Processing Stack V1を使う方法を解説します。
本記事ではPost-Processing Stackおよび、Playmakerを使用します。
はじめに
STYLYでは、Filter機能により画面の雰囲気を変えることができます。

STYLY Filters
しかし、こだわり始めると自分でPost-Processingの設定を細かく調整したい場合も出てくると思います。
自作のPostProcessing Profileを使用したい場合はPlaymakerを使えば可能です。
Unityのサンプルプロジェクトを公開しています。
Post-Processing Stackについてはこちら、高橋啓治郎氏の講演資料をご参照ください。
準備
まず、STYLY-Unity-ExamplesリポジトリをGitHubからクローンまたはZipでダウンロードしてください。
https://github.com/styly-dev/STYLY-Unity-Examples
入手したプロジェクトをUnity 2019.3.xで開き、SetPostProcessingシーンを開いてください。
\Assets\STYLY_Examples\SetPostProcessing\SetPostProcessing

SetPostProcessing Scene
Post-Processing Stack V1とPlaymaker(有料)をインポートします。
- Post-Processing Stack V1
https://assetstore.unity.com/packages/essentials/post-processing-stack-83912
https://github.com/Unity-Technologies/PostProcessing/releases/tag/1.0.4
- Unity-PostProcessing-1.0.4.unitypackageをダウンロードしてUnityへインポートする。
- Unity2018.3以降のバージョンにインポートするとコンパイルエラーが出るので、以下のように修正してください。
ファイル
/Assets/PostProcessing/Editor/PropertyDrawers/MinDrawer.cs
修正内容
2行目:using UnityEngine.PostProcessing;
↓
2行目:using MinAttribute = UnityEngine.PostProcessing.MinAttribute;
- Playmaker
https://assetstore.unity.com/packages/tools/visual-scripting/playmaker-368
Unityエディタを実行すると、PostProcessが設定されます。 雰囲気がガラッと変わりますね。

Use Post Processing Stack
SetPostProcessing使用方法
- 設定したいPost-Processing Profileを用意する。
- SetPostProcessing(Upload to STYLY)プレファブを選択し、Set Post Processing FSMのPost Processing Profileへ設定する。
How to Use SetPostProcessing
- Unityを実行して指定したPostProcessing Profileが反映される事を確認する。
- UnityPluginを使ってSetPostProcessing(Upload to STYLY)をSTYLYにアップロードする。
使用上の注意
使えないProfile設定
PostProcessing Profileの設定の中にはSTYLYやVRに適さないProfile設定があります。
STYLYの設定により使えないもの(Forward Rendering/MSAA有効のため)
- Fog:deferred Rendering Pathでないと使えない。
- Antialiasing:Fast Approximate Anti-aliasingのみ使える。Temporal Anit-aliasingは使えない。
- Screen Space Reflection
- Depth Of Field
- Motion Blur
- Chromatic Aberration:画面端に向けて色収差を出す効果。VRではあまり効果がない。
- Grain:画面にノイズをかける効果。VRではおすすめしない。
- Vignette:画面の周辺を黒くぼかす効果。VRではおすすめしない。
シーンにSetPostProcessを複数配置しない
同じシーンに複数のSetPostProcessを配置すると競合します。
また、STYLYのFilter機能とも競合するので使わないでください。
Playmaker解説
ここからは、Set Prost Processing FSMについて解説します。
Set Post Processing FSMをPlaymakerEditorで開いてください。
Variable説明
camera | ポストプロセス適用先のMainCameraを取得し格納する |
Post Processing Profile | Post Processing Profileファイル |
PostProcessingBehaviourCamera | Cameraに設定するPost Processing Behaviourコンポーネント |

Variables
Inspectorにチェックを入れる事でPlaymaker FSMのControlsに表示されます。
Playmaker Editorを開かずに値を設定したり参照できるので便利です。
Variablesへ任意のコンポーネントを追加する方法
ちょっと戸惑ったので解説。
例えばPostProcessingBehaviourを追加したい場合、まずVariable TypeをObjectとして追加する。
追加後、Object Type>UnityEngine>PostProcessing>PostProcessingBehaviourを選択する。
PostProcessingProfileも同様の方法で追加します。
State、Action説明

States & Actions
実行するとSetPostProcessing状態へ遷移し、以下のActionを順に実行します。
- Get Main CameraでMainカメラを取得してcameraへ格納
- Add ComponentでカメラにPostProcessingBehaviourコンポーネントを追加。同時にPostProcessingBehaviourCamera変数に格納。Remove On Exitにチェックを入れる事で、終了時に自動削除されるようにします。
- SetPropertyで設定したいPost Processing Profileを設定する。
Unityで実行してPostProcessingProfileが実行される事を確認してください。
STYLYでPostProcessingStackを使用する方法および、PlaymakerFSMの解説は以上です。