Compartir a través de


Función D3DXComputeIMTFromSignal

Calcula el IMT por triángulo a partir de una señal personalizada especificada por la aplicación que varía sobre la superficie de la malla (generalmente con una frecuencia mayor que los datos de vértices). La señal se evalúa a través de una función de devolución de llamada especificada por el usuario.

Sintaxis

HRESULT D3DXComputeIMTFromSignal(
  _In_  LPD3DXMESH              pMesh,
  _In_  DWORD                   dwTextureIndex,
  _In_  UINT                    uSignalDimension,
  _In_  FLOAT                   fMaxUVDistance,
  _In_  DWORD                   dwOptions,
  _In_  LPD3DXIMTSIGNALCALLBACK pSignalCallback,
  _In_  VOID                    *pUserData,
        LPD3DXUVATLASCB         pStatusCallback,
        LPVOID                  pUserContext,
  _Out_ LPD3DXBUFFER            *ppIMTData
);

Parámetros

pMesh [in]

Tipo: LPD3DXMESH

Puntero a una malla de entrada (vea ID3DXMesh) que contiene la geometría del objeto para calcular el IMT.

dwTextureIndex [in]

Tipo: DWORD

Índice de coordenadas de textura de base cero que identifica qué conjunto de coordenadas de textura se van a usar.

uSignalDimension [in]

Tipo: UINT

Número de componentes de cada punto de datos de la señal.

fMaxUVDistance [in]

Tipo: FLOAT

Distancia máxima entre vértices; el algoritmo continúa subdividiendo hasta que la distancia entre todos los vértices es menor o igual que fMaxUVDistance.

dwOptions [in]

Tipo: DWORD

Opciones de ajuste de textura. Se trata de una combinación de uno o varios D3DXIMT FLAGS.

pSignalCallback [in]

Tipo: LPD3DXIMTSIGNALCALLBACK

Puntero a una función de evaluador proporcionada por el usuario, que se usará para calcular el valor de señal en coordenadas U,V arbitrarias. La función sigue el prototipo de LPD3DXIMTSIGNALCALLBACK.

pUserData [in]

Tipo: VOID*

Puntero a un valor definido por el usuario que se pasa a la función de devolución de llamada de señal. Normalmente, una aplicación usa para pasar un puntero a una estructura de datos que proporciona información de contexto para la función de devolución de llamada.

pStatusCallback

Tipo: LPD3DXUVATLASCB

Puntero a una función de devolución de llamada para supervisar el progreso del cálculo de IMT.

pUserContext

Tipo: LPVOID

Puntero a una variable definida por el usuario que se pasa a la función de devolución de llamada de estado. Normalmente, una aplicación usa para pasar un puntero a una estructura de datos que proporciona información de contexto para la función de devolución de llamada.

ppIMTData [out]

Tipo: LPD3DXBUFFER*

Puntero al búfer (vea ID3DXBuffer) que contiene la matriz IMT devuelta. Esta matriz se puede proporcionar como entrada a las funciones UVAtlas D3DX para priorizar la asignación de espacio de textura en la parametrización de textura.

Valor devuelto

Tipo: HRESULT

Si la función se realiza correctamente, el valor devuelto es D3D_OK; de lo contrario, el valor es D3DERR_INVALIDCALL.

Comentarios

Esta función requiere que la malla de entrada contenga una asignación de textura de señal a malla (es decir, coordenadas de textura). Permite al usuario definir una señal arbitrariamente sobre la superficie de la malla.

Requisitos

Requisito Value
Encabezado
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Consulte también

Funciones UVAtlas

Uso de UVAtlas (Direct3D 9)