D3DXTessellateNPatches 函数
使用 N 补丁分割方案细化给定的网格。
语法
HRESULT D3DXTessellateNPatches(
_In_ LPD3DXMESH pMeshIn,
_In_ const CONST DWORD *pAdjacencyIn,
_In_ FLOAT NumSegs,
_In_ BOOL QuadraticInterpNormals,
_Out_ LPD3DXMESH *ppMeshOut,
_Out_ LPD3DXBUFFER *ppAdjacencyOut
);
parameters
-
pMeshIn [in]
-
类型: LPD3DXMESH
指向 ID3DXMesh 接口的指针,表示要 tessellate 的网格。
-
pAdjacencyIn [in]
-
类型: const CONST DWORD*
指向每个面三个 DWORD 数组的指针,该数组为源网格中的每个人脸指定三个邻居。 此参数可以为 NULL。
-
NumSegs [in]
-
类型: FLOAT
每条边到细数的段数。
-
QuadraticInterpNormals [in]
-
类型: BOOL
设置为 TRUE 可对法线使用二次内插;对于线性内插,设置为 FALSE 。
-
ppMeshOut [out]
-
类型: LPD3DXMESH*
指向 ID3DXMesh 接口的指针的地址,表示返回的细化网格。
-
ppAdjacencyOut [out]
-
类型: LPD3DXBUFFER*
指向 ID3DXBuffer 接口的指针的地址。 如果此参数的值未设置为 NULL,则此缓冲区将包含每个面三个 DWORD 的数组,该数组为输出网格中的每个人脸指定三个邻居。 此参数可以为 NULL。
返回值
类型: HRESULT
如果函数成功,则返回值D3D_OK。 如果函数失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA E_OUTOFMEMORY。
备注
此函数使用 N 补丁算法进行细化。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|
请参阅