Expand Minimize

D3DXSHMultiply2 function

Computes the product of two spherical harmonics functions (f and g). Both functions are of order N = 2.

Syntax


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

Parameters

pOut [in]

Type: FLOAT*

Pointer to the output SH coefficients — the basis function Ylm is stored at l2 + m + l. The order N determines the length of the array, where there should always be N2 coefficients.

pF [in]

Type: const FLOAT*

Input SH coefficients for first function.

pG [in]

Type: const FLOAT*

Second set of input SH coefficients.

Return value

Type: FLOAT*

Pointer to SH output coefficients.

Remarks

The product of two SH functions of order N = 2 generates an SH function of order 2 × N - 1 = 3, but the results are truncated. This means that the product commutes ( f × g = g × f ) but doesn't associate ( f × (g × h) ≠ ( f × g) × h ).

This function uses the following equation:


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

where y_i(s) is the ith SH basis function, and where f(s) and g(s) use the following SH function:


sum_i(y_i(s)*c_i)

Requirements

Header

D3DX10Math.h

Library

D3DX10.lib

See also

Math Functions

 

 

Community Additions

ADD
Show:
© 2014 Microsoft