Depth TOPは、指定されたRender TOPに記述されたシーンから深度情報を含む画像を読み込みます。結果として得られる画像は、表面が近距離の深度値(カメラのパラメータ “Near”)にあるピクセルでは黒(0)になります。また、表面が遠方の深度値(カメラのパラメータ “Far”)にあるピクセルでは、白(1)になります。
Depth TOPはシャドウマッピングを行うために使用されます。他にも、深さを基準にしたエッジ検出など、様々な用途があります。
深さの範囲は、定義上、近距離平面→遠距離平面となります。Depth TOPの値は、近平面では0、遠平面では1になります。一般的にDepth TOPの画像は、平面がオブジェクトの周りに本当に密着していない限り、白になります。しかし、視覚的に何も見えないからといって、情報がないわけではありません。
もう1つのオプションは、Linear Camera-Space Depthです。Render TOPのDepth Buffer Formatが32ビット浮動小数点に設定されていて、Linear Camera-Space Depthパラメータがオンの場合、Depth TOPはリニアなカメラ空間深度を出力します。
Level TOPを使用してDepth TOPの値をリレンジすることができます。ただし、Level TOPのPixel Formatを16または32ビットに設定しないと、Depth TOPのデータから多くの情報が失われます(Depth TOPは24ビットのデータを持っています)。
Depth TOP は、24 ビット固定小数点または 32 ビット浮動小数点のシングルチャンネル画像を作成します。Depth TOP を他の TOP への入力として使用する場合、そのデータは RGBA 値 (D, D, D, D, 1) のように扱われます。GLSL シェーダで Depth テクスチャをサンプリングする場合も同様です。
デプス値に使用する Render TOPを設定します。
- Depth Texture / depth
- 8-bit fixed (RGBA) / rgba8fixed
- 16-bit float (RGBA) / rgba16float
- 32-bit float (RGBA) / rgba32float
- 10-bit RGB, 2-bit Alpha, fixed (RGBA) / rgb10a2fixed
- 16-bit fixed (RGBA) / rgba16fixed
- 11-bit float (RGB), Positive Values Only / rgb11
- 8-bit fixed (R) / r8fixed
- 16-bit fixed (R) / r16fixed
- 16-bit float (R) / r16float
- 32-bit float (R) / r32float
- 8-bit fixed (RG) / rg8fixed
- 16-bit fixed (RG) / rg16fixed
- 16-bit float (RG) / rg16float
- 32-bit float (RG) / rg32float
- 8-bit fixed (A) / a8fixed
- 16-bit float (A) / a16float
- 32-bit float (A) / a32float
- Input / input
- Camera Space / cameraspace
- Reranged from Camera Space / reranged
- rangefrom1
- rangefrom2
- rangeto1
- rangeto2
参照:共通 Common ページ