D3DXSHMultiply2 函数 (D3DX10Math.h)

注意

D3DX (D3DX 9、D3DX 10 和 D3DX 11) 实用工具库已弃用,不支持 Windows 应用商店应用。

注意

建议不要使用此函数,而是使用 球面调和数学 库函数 XMSHMultiply2

计算 f 和g) 两个球面调和函数 (的乘积。 这两个函数的顺序为 N = 2。

语法

FLOAT* D3DXSHMultiply2(
  _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 = 2 的两个 SH 函数的乘积生成顺序为 2 的 SH 函数× N - 1 = 3,但结果将被截断。 这意味着产品通勤 ( f × g = g ×f ) ,但不 ( f × (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

另请参阅

数学函数