ここでは、Post Processing Stackに含まれるデフォルトのエフェクトに関して説明します。
Screen Space Reflection (スクリーンスペースリフレクション、SSR) は、反射を計算するためにスクリーンスペースのデータを再使用する技術です。一般に、濡れた床の表面や水たまりなどのより微妙な反射を作成するために使用します。
スクリーンスペースリフレクションは負荷の高い技術ですが、正しく使用すれば大変効果的です。スクリーンスペースリフレクションは、法線の G バッファに依存するため デファードレンダリングパス でのみ使用可能です。負荷の高いエフェクトなのでモバイルでの使用は推奨されません。
プロパティー | 説明 |
---|---|
Blend Type | 反射を描画にブレンドする方法 |
Reflection Quality | 解像に使用するバッファのサイズ。解像度を半分にすると、スクリーンスペースリフレクションはずっと高速になりますが、精密度が落ちます。 |
Max Distance | 最大反射距離 (ワールド単位) |
Iteration Count | レイトレーシングの最大の長さ |
Step Size | レイトレーシングのおおよそのステップサイズ。値を高くすると遠くまでトレースし、低くすると反射の質が向上します。 |
Width Modifier | 反射光のレイが後方に通り抜ける場合がある一般的な柱、壁、家具、その他のオブジェクトの厚さ |
Reflection Blur | 反射のぼやける度合い |
Reflect Backfaces | すべての表の面をカリングしてシーンをレンダリングします。それによって生じたテクスチャを、深度マップのある点が後方から照らされたときに裏面がどのように見えるかを予測するのに使用します。 |
Reflection Multiplier | スクリーンスペースリフレクションの非物理演算的な乗数。1.0 が物理演算に基づいた値。 |
Fade Distance | Max Distance をどれだけ超えるとスクリーンスペースリフレクションのフェードアウトを開始するか |
Fresnel Fade | フレネルフェードを拡充します。表面近くの床の反射の表示が適切で、床のもっと下の方では悪い場合に、この値を増加します。 |
Fresnel Fade Power | 値を高くすると、角度によって反射が変わるときに、フレネルフェードを速くします。 |
(Screen Edge Mask) Intensity | 値を高くすると、画面の端に近いスクリーンスペースリフレクションをフェードアウトします。そのため、カメラの移動で反射が急に発生することがありません。 |
Reflect Backfaces を無効にします
Reflection Quality を削減します
Iteration Count を削減します (Step Size を増加して補います)
付加的な Reflection を使用します
スクリーンスペースリフレクションは、 キューブマップ や リフレクションプローブ などの他の方法よりも詳細な反射を得るために使用します。反射のエフェクトのためにキューブマップを使用するオブジェクトは自身のリフレクションを得ることができず、リフレクションプローブのリフレクションはその精度が限られています。
上記の画像では、赤で囲った領域で不正確な反射が見られます。 これは、カメラ とリフレクションプローブの間の変換によるものです。 また、このリフレクションプローブはベイクされているため、色付きの球などの動的なオブジェクトに反映できないことにも注意してください。
リアルタイムのリフレクションプローブ(上図)では、動的なオブジェクトがキャプチャされますが、上の例のように、反射の位置は正しくありません。 赤で囲った領域には、白い球の反射が見えます。
これらをページの一番上の画像 (スクリーンスペースリフレクションを使用した画像) と比べると、リフレクションの精度の差がはっきりと分かります。ただし、これらの方法ははるかに負担が軽く、それほど精度が必要ない場合には、常に使用するようにします。
スクリーンスペースリフレクションは、深度マップ上の反射位置から他の面へのレイマーチングによって計算されます。反射ベクトルは、深度バッファ 内の各反射点について計算されます。このベクトルは、交点が深度バッファ上の別の点といっしょに見つかるまで段階的に進みます。この2番目の点は、反射として元の点に戻されます。
Iteration Count を減らすと、レイが深度バッファに対してテストされる回数が減り、コストが大幅に削減されます。 ただし、そのようにすると、テストする全体の深さが短くなり、反射が短くなります。Step Size を大きくすると、これらのテストの間隔が広がり、全体の深さは元に戻りますが精度は低下します。
__Blend Type を Physically Based __ に設定すると、反射マテリアルの BRDF (双方向反射率分布関数) がサンプリングされ、その結果の反射を変更します。この処理は高価ですが、特に、粗い表面でよりリアルな反射を表現できます。
Reflect Backfaces を使用すると、このエフェクトもまた、オブジェクトの背面の反射を近似しようとして反対方向にレイトレースします。 この処理はエフェクトのコストを大幅に増加させますが、反射するオブジェクトの他のオブジェクトの前方に映す近似の反射を得るために使用されます。
シェーダーモデル 3
対応するハードウェアと詳細な情報は グラフィックハードウェアの性能とエミュレーション を参照してください。
2017–05–24 編集レビュー 無しにパブリッシュされたページ
5.6 の新機能
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.