D3DXComputeIMTFromPerTexelSignal 函数

根据每个纹素数据计算每三角形 IMT 的。 此函数类似于 D3DXComputeIMTFromTexture,但它使用浮点数组传入数据,并且可以计算比 4 更高的维值。

语法

HRESULT D3DXComputeIMTFromPerTexelSignal(
  _In_  LPD3DXMESH      pMesh,
  _In_  DWORD           dwTextureIndex,
  _In_  FLOAT           *pfTexelSignal,
  _In_  UINT            uWidth,
  _In_  UINT            uHeight,
  _In_  UINT            uSignalDimension,
  _In_  UINT            uComponents,
  _In_  DWORD           dwOptions,
        LPD3DXUVATLASCB pStatusCallback,
        LPVOID          pUserContext,
  _Out_ LPD3DXBUFFER    *ppIMTData
);

参数

pMesh [in]

类型: LPD3DXMESH

指向输入网格的指针 (看到 ID3DXMesh) ,其中包含用于计算 IMT 的对象几何图形。

dwTextureIndex [in]

类型: DWORD

从零开始的纹理坐标索引,用于标识要使用的纹理坐标集。

pfTexelSignal [in]

类型: FLOAT*

指向将从中计算 IMT 的输入纹素数组的指针。 数组大小为 uWidth*uHeight*uComponents。

uWidth [in]

类型: UINT

纹理宽度(以像素为单位)。

uHeight [in]

类型: UINT

纹理高度(以像素为单位)。

uSignalDimension [in]

类型: UINT

信号数组的每个元素中每个分量的浮点数。

uComponents [in]

类型: UINT

每个纹素中的组件数。

dwOptions [in]

类型: DWORD

纹理环绕选项。 这是一个或多个 D3DXIMT 标志的组合

pStatusCallback

类型: LPD3DXUVATLASCB

指向用于监视 IMT 计算进度的回调函数的指针。

pUserContext

类型: LPVOID

指向传递给状态回调函数的用户定义变量的指针。 通常由应用程序用来将指针传递到为回调函数提供上下文信息的数据结构。

ppIMTData [out]

类型: LPD3DXBUFFER*

指向缓冲区的指针 (看到 ID3DXBuffer) ,其中包含返回的 IMT 数组。 可将此数组作为输入提供给 D3DX UVAtlas Functions ,以在纹理参数化中确定纹理空间分配的优先级。

返回值

类型: HRESULT

如果函数成功,则返回值D3D_OK;否则,该值为 D3DERR_INVALIDCALL。

要求

要求
标头
D3DX9Mesh.h

D3dx9.lib

另请参阅

UVAtlas 函数

使用 UVAtlas (Direct3D 9)