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
);

parameters

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 FLAGS 的组合。

pStatusCallback

类型: LPD3DXUVATLASCB

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

pUserContext

类型: LPVOID

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

ppIMTData [out]

类型: LPD3DXBUFFER*

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

返回值

类型: HRESULT

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

要求

要求 Value
标头
D3DX9Mesh.h

D3dx9.lib

另请参阅

UVAtlas 函数

使用 UVAtlas (Direct3D 9)