Post Processing Stack(ポストプロセッシングスタック)でワンランク上のビジュアル表現

高校生のBlank:キモズムさんから
ポストプロセッシングスタック
説明せえよと頼まれたのじゃ
ポストプロセッシングスタック
説明せえよと頼まれたのじゃ
ポストプロ……何すか?
ポストプロセッシングスタック(Post Processing Stack、以下ポスプロ)は初心者からプロの開発者まで、誰でも簡単にビジュアルを美麗にできるビジュアル強化アセットである。何だかよくわからない単語だけどピピッとスゴいビジュアルができる、程度に考えてよい。ポスプロ=ピピッとスゴい。そしてUnityが提供している公式アセットのため無料である。

アセットストアのこちらのページからダウンロードできるぞ!
これの何がすごいっすか?
まあこれが簡単に使えてすごいのだ。
Unity内のカメラにポスプロのコンポーネント(Post Processing Behavior)を付けることで、カメラが映し出すゲーム中のビジュアルに美麗なエフェクトをかけることができる。

1)カメラのコンポーネントに「Post Processing Behavior」を追加します

2)プロジェクトビューでCreate→Post-Processing Profileを作成します

3)1)で追加したPost Processing Behaviorに、2)のプロファイルをドラッグします。以上で準備完了です

4)2)のプロファイルを選択し、インスペクター上からポスプロの持つ色々なエフェクトを設定できます。カメラに付けるコンポーネントなので、基本的には1シーンにつき1カメラ、1ポスプロという使い方になります
※画面にステージが追加されてますが、撮影の都合で加えただけです。ステージはポスプロ関係ありません…^^;
インスペクタービュー上でチェックボックスや数値を調整するだけで表現できるので、初心者でも簡単に実装できるし、高度な調整にはテクニックやセンスを持つ上級者ならより美麗な表現が可能になるというわけだ。

とりあえず後述するエフェクトをガンガン加えてみた。加えるだけなら簡単にできるが、やりすぎるとバランスがおかしくなるし、処理も重くなる

多少バランスを取ってみた。まだ被写界深度が強すぎるね。うまく使いこなそう
特に使いやすいポスプロのエフェクト
ポスプロはエフェクトの種類別に有効・無効を設定できる。ここでは特に初心者でも使いやすく、汎用性が高いものを説明しよう。全部の機能を知りたいという方はこの記事にあるUnity Japanのビジュアルマスター高橋啓治郎さんの説明ムービーを見てくれ!■Debug Views: 各機能の効果を確認する
■Fog: 霧のような表現を与える。この機能だけはLighting設定で調整する(なぜかポスプロの中に項目が残っている模様)
■AntiAliasing: 画面全体をなめらかにする
■Ambient Occlusion: 明暗や陰影をくっきりさせる
■Screen Space Reflection: 水面や地面にオブジェクトが映り込む反射表現をする
■Depth Of Field: 被写界深度を設定し、背景をボカすことができる
■Motion Blur: モーションブラーを設定し、早い動きにボケを与える
■Bloom: 輝度の高いところ、発光しているオブジェクトを輝かせる
ひとつずつ説明しよう
Fog(フォグ)

霧である。この項目だけは(なぜか)上部メニューのWindow→Lighting→Settingsから設定する。色を変えることで怪しげな雰囲気、吹雪や砂煙、神秘的な雰囲気などが出せる
AntiAliasing(アンチエイリアシング)

AntiAliasing適用前

AntiAliasing適用後。わかりづらいが、ドットのジャギが目立たないなめらかな、上品なビジュアルになっている。……いやこの画面じゃわからないな。実際にプレイしてみるとわかるのでやってみてくれぃ!
Ambient Occlusion(アンビエントオクルージョン)

Ambient Occlusionを訳すと環境閉塞という意味でよくわからないのだが、環境の明暗/陰影をより自然に見せることができる開発用語。Unityに限らず使われる

試しに実装してみたが、うーん、このプロジェクトには向いてないですね(笑)。もっとフォトリアルなビジュアルのゲームだとマッチするかな……
Screen Space Reflection(スクリーンスペースリフレクション)

よくSSRと略される。水面や地面にオブジェクトが映り込む反射表現ができる。シンプルな画面に味付けとして付け足すだけでも、かなりオシャレな雰囲気が出せる

他の項目と違い、CameraのRendering PathをDifferedに設定しないと機能しないという制限があるので忘れないようにしよう
Depth Of Field(デプスオブフィールド、被写界深度)

いわゆる被写界深度である。背景をボカすことができる。よくDOFと略されます

先日の1週間ゲームジャムで人気作品として挙がっていた「やまくずし」で使われてましたね。こういうミニチュアな空間表現だといい味が出ます。「やまくずし」のプレイはこちらのページから。面白いよ~
Motion Blur(モーションブラー)

早い動きにボケを与える。見づらくなるデメリットもあるので使い所が難しいかも。イベントシーンや特殊なステージなど、状況に応じて使うのがよさそう
Bloom(ブルーム)

ジワーッと光らせるエフェクト。リアルなゲームからちょっとしたパズルゲームの味付けまで、色々な場面で活用されている

Directional LightやSkyboxで明るい世界になっていると調整が難しいです。暗い世界だといい感じに光ってくれるので、うまくできない場合はライトのIntensityを下げてみよう

オブジェクトを部分的に光らせたい場合は、光らせたい箇所に「Emissionにチェックを入れたマテリアル」を設定しよう。いい感じに光らせることができるぞ

高橋啓治郎さんによるとRadiusを最大にし、Intensityの多寡で明るさを調整するのがおすすめとのこと。確かにこの方が自然な光り方になる
最後に紹介したBloomは
美しいビジュアルをお手軽に
再現できておすすめ!
美しいビジュアルをお手軽に
再現できておすすめ!
光らせると
何でもカッコイイっすね!
何でもカッコイイっすね!