D3DXCreatePRTEngine function

Creates an ID3DXPRTEngine object that can efficiently generate precomputed radiance transfer (PRT) simulations of a 3D scene.

Syntax

HRESULT D3DXCreatePRTEngine(
  _In_    LPD3DXMESH      pMesh,
  _In_    DWORD           *pAdjacency,
  _In_    BOOL            ExtractUVs,
  _In_    LPD3DXMESH      pBlockerMesh,
  _Inout_ LPD3DXPRTENGINE ppEngine
);

Parameters

pMesh [in]

Type: LPD3DXMESH

Pointer to an input ID3DXMesh mesh object that models the 3D scene. This mesh must have an attribute table in which vertices are in a unique attribute.

pAdjacency [in]

Type: DWORD*

Optional pointer to an array of three DWORDs per face to be filled with adjacent face indices. The number of bytes in this array must be at least ((3 * GetNumFaces) * sizeof(DWORD)). May be NULL.

ExtractUVs [in]

Type: BOOL

If TRUE, textures will be used to store albedos or PRT vectors.

pBlockerMesh [in]

Type: LPD3DXMESH

Pointer to an optional ID3DXMesh mesh object that blocks the 3D scene. May be NULL.

ppEngine [in, out]

Type: LPD3DXPRTENGINE

Pointer to an output ID3DXPRTEngine object.

Return value

Type: HRESULT

If the function succeeds, the return value is D3D_OK. If the function fails, the return value can be one of the following: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Remarks

Use D3DXConcatenateMeshes to combine multiple meshes into a single mesh interface.

Requirements

Requirement Value
Header
D3DX9Mesh.h
Library
D3dx9.lib

See also

Precomputed Radiance Transfer Functions