【Unity】Orthographicカメラで被写界深度エフェクトを使う
Sprite+Orthographicカメラという極北で被写界深度エフェクトテスト pic.twitter.com/4VAVI4N5sj
— enu (@_enu) 2016, 1月 30
やること
ImageEffectに含まれるDepthOfFieldエフェクト。
これはperspectiveカメラで使うことを前提にしており、orthographicカメラで使おうとするとうまくいかない。なんとかする。
Unityバージョン
5.3.2p1
手順
DepthOfFieldScatter.shaderを開けて
d = Linear01Depth (d);
となっている箇所をコメントアウトすれば良い。
どうしてこうなるのか?
orthographicカメラとperspectiveカメラではdepthの算出方法が異なるため。
詳しくは「深度バッファ 精度」あたりでググるとそれっぽいのが出る。