Microsoft DirectX 8.1 (C++)

D3DXTessellateNPatches

Tessellates the given mesh using the n-Patch tessellation scheme.

HRESULT D3DXTessellateNPatches(
  LPD3DXMESH    pMeshIn,
  CONST DWORD*  pAdjacencyIn,
  FLOAT         NumSegs,
  BOOL          QuadraticInterpNormals
  LPD3DXMESH*   ppMeshOut
  LPD3DXBUFFER* ppAdjacencyOut
);

Parameters

pMeshIn
[in] Pointer to an ID3DXMesh interface, representing the mesh to tessellate.
pAdjacencyIn
[in] Pointer to an array of three DWORDs per face that specify the three neighbors for each face in the source mesh. This parameter may be NULL.
NumSegs
[in] Number of segments per edge to tessellate.
QuadraticInterpNormals
[in] If set to TRUE, use quadratic interpolation for normals. If set to FALSE, use linear interpolation.
ppMeshOut
[out] Address of a pointer to an ID3DXMesh interface, representing the returned tessellated mesh.
ppAdjacencyOut
[out] Pointer to an array of three DWORDs per face that specify the three neighbors for each face in the output mesh. This parameter may be NULL.

Return Values

If the function succeeds, the return value is D3D_OK.

If the function fails, the return value can be one of the following values.

D3DERR_INVALIDCALL
D3DXERR_INVALIDDATA
E_OUTOFMEMORY

Note  This function tessellates by using the n-Patch algorithm.

Requirements

  Header: Declared in D3dx8mesh.h.
  Import Library: Use D3dx8.lib.