ID3DXPRTEngine::ComputeBounceAdaptive メソッド
アダプティブ サンプリングを使用して、反射された光の単一のバウンスに起因するソースの放射輝度を計算します。 このメソッドは、メッシュ上に新しい頂点と面を生成し、事前計算済みの放射転送 (PRT) 信号をより正確に近似します。 この方法は、球面調和 (SH) ベースの PRT モデルを含む、任意の点灯シーンに使用できます。
構文
HRESULT ComputeBounceAdaptive(
[in] LPD3DXPRTBUFFER pDataIn,
[in] FLOAT AdaptiveThresh,
[in] FLOAT MinEdgeLength,
[in] UINT MaxSubdiv,
[in, out] LPD3DXPRTBUFFER pDataOut,
[in, out] LPD3DXPRTBUFFER pDataTotal
);
パラメーター
-
pDataIn [in]
-
種類: LPD3DXPRTBUFFER
前のライト バウンスからの 3D オブジェクトを表す入力 ID3DXPRTBuffer オブジェクトへのポインター。 この入力バッファーには、シミュレーションに適切な数のカラー チャネルが割り当てられている必要があります。
-
AdaptiveThresh [in]
-
型: FLOAT
メッシュの頂点と面を再分割するために使用する PRT ベクトルのしきい値。 1e-6f 未満の場合は、既定値の 1e-6f が指定されます。
-
MinEdgeLength [in]
-
型: FLOAT
アダプティブ サンプリングで生成される顔エッジの最小長。 メソッドが値が小さすぎると判断した場合は、モデルに依存する値が指定されます。 0 の場合、既定値の 4 が指定されます。
-
MaxSubdiv [in]
-
型: UINT
アダプティブ サンプリングで使用される顔の最大サブ区分レベル。
-
pDataOut [in, out]
-
種類: LPD3DXPRTBUFFER
出力 ID3DXPRTBuffer オブジェクトへのポインター。 この出力バッファーには、シミュレーションに適切な数のカラー チャネルが割り当てられている必要があります。
-
pDataTotal [in, out]
-
種類: LPD3DXPRTBUFFER
光バウンス計算ごとに pDataOut の実行合計を保持するオプションの ID3DXPRTBuffer オブジェクトへのポインター。 NULL を指定できます。
戻り値
型: HRESULT
メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のいずれかになります:D3DERR_INVALIDCALL、E_OUTOFMEMORY。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目