D3DXSHMultiply6 函式

注意

D3DX (D3DX 9、D3DX 10 和 D3DX 11) 公用程式程式庫已被取代,且不支援 Windows 市集應用程式。

注意

建議您不要使用此函式,而是建議您使用 球面調色數學 程式庫函式 XMSHMultiply6

計算兩個球面調色函數的乘積, (f 和 g) 。 這兩個函式的順序都是 N = 6。

語法

FLOAT* D3DXSHMultiply6(
  _In_       FLOAT *pOut,
  _In_ const FLOAT *pF,
  _In_ const FLOAT *pG
);

參數

pOut [in]

類型: FLOAT*

輸出 SH 係數的指標 - 基礎函式 Ylm 會儲存在l + m + l。 順序 N 會決定陣列的長度,其中一律應該有 N次係數。

pF [in]

類型:const FLOAT*

第一個函式的輸入 SH 係數。

pG [in]

類型:const FLOAT*

第二組輸入 SH 係數。

傳回值

類型: FLOAT*

SH 輸出係數的指標。

備註

訂單 N = 6 的兩個 SH 函式乘積會產生 order 2 × N - 1 = 11 的 SH 函式,但結果會被截斷。 這表示產品會 ( f × g × g = ) ,但不會將 ( f × ( g × g × h ) ≠ ( f × g ) × h ) 產生關聯。

此函式會使用下列方程式:

pOut[i] = int(y_i(s) * f(s) * g(s))

其中 y_i (s) 是 ith SH 基礎函式,其中 f (s) 和 g (s) 使用下列 SH 函式:

sum_i(y_i(s)*c_i)

規格需求

需求
標頭
D3DX10Math.h
程式庫
D3DX10.lib

另請參閱

數學函式