ID3DXPRTEngine::ComputeDirectLightingSHGPU メソッド
GPU を使用して、ソースの放射が球面調和 (SH) 近似で表される 3D オブジェクトへの直接の照明の影響を計算します。 GPU での照明の計算は、通常、CPU よりもはるかに高速になります。
構文
HRESULT ComputeDirectLightingSHGPU(
[in] LPDIRECT3DDEVICE9 pDevice,
[in] UINT Flags,
[in] UINT Order,
[in] FLOAT ZBias,
[in] FLOAT ZAngleBias,
[in, out] LPD3DXPRTBUFFER pDataOut
);
パラメーター
-
pDevice [in]
-
GPU でシミュレーションを実行するために使用される IDirect3DDevice9 デバイス オブジェクトへのポインター。 デバイスは 、ps_2_0 ピクセル シェーダーをサポートする必要があります。
注意
コールバック関数では、GPU シミュレーターで使用される IDirect3DDevice9 デバイス オブジェクトを使用しないでください。
-
Flags [in]
-
型: UINT
シャドウ z バッファーの解像度を定義する GPU シミュレーション パラメーター。 D3DXSHGPUSIMOPT の定数値のいずれかに設定する必要があります。 精度の高いシミュレーションを指定するために、D3DXSHGPUSIMOPT_HIGHQUALITY値をD3DXSHGPUSIMOPT_SHADOWRESxxx値の 1 つと組み合わせることができます。
-
順序 [入力]
-
型: UINT
SH評価の順序。 D3DXSH_MAXORDERまでのD3DXSH_MINORDERの範囲内である必要があります(両端を含む)。 この評価では、Order² 係数が生成されます。 評価の次数は Order - 1 です。
-
ZBias [in]
-
型: FLOAT
法線方向のバイアス。
-
ZAngleBias [in]
-
型: FLOAT
法線方向のバイアスは、1 から光線による角度のコサインを引いた値でスケーリングされます。
-
pDataOut [in, out]
-
種類: LPD3DXPRTBUFFER
ID3DXPRTBuffer オブジェクトへのポインター。 このバッファーには、シミュレーションに適切な数のカラー チャネルが割り当てられている必要があります。
戻り値
型: HRESULT
メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、E_OUTOFMEMORY。
注釈
この方法では、albedo に光信号を乗算せず、入力光のみがシミュレーターに統合されます。 albedo を乗算しないことで、albedo のバリエーションをソース放射よりも細かいスケールでモデル化できるため、圧縮によるより正確な結果が得られます。
MultiplyAlbedo を呼び出して、事前計算された各放射輝度転送 (PRT) ベクトルに albedo を乗算します。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
こちらもご覧ください