Condividi tramite


Funzione D3DXComputeIMTFromSignal

Calcola per triangolo IMT da un segnale specificato dall'applicazione personalizzato che varia sulla superficie della mesh (in genere a una frequenza superiore rispetto ai dati dei vertici). Il segnale viene valutato tramite una funzione di callback specificata dall'utente.

Sintassi

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

Parametri

pMesh [in]

Tipo: LPD3DXMESH

Puntatore a una mesh di input (vedere ID3DXMesh) che contiene la geometria dell'oggetto per calcolare IMT.

dwTextureIndex [in]

Tipo: DWORD

Indice di coordinate della trama in base zero che identifica il set di coordinate della trama da usare.

uSignalDimension [in]

Tipo: UINT

Numero di componenti in ogni punto dati del segnale.

fMaxUVDistance [in]

Tipo: FLOAT

Distanza massima tra vertici; l'algoritmo continua a suddividere fino a quando la distanza tra tutti i vertici è minore o uguale a fMaxUVDistance.

dwOptions [in]

Tipo: DWORD

Opzioni di wrapping della trama. Si tratta di una combinazione di uno o più FLAG D3DXIMT.

pSignalCallback [in]

Tipo: LPD3DXIMTSIGNALCALLBACK

Puntatore a una funzione di analizzatore fornita dall'utente, che verrà usata per calcolare il valore del segnale in coordinate U,V arbitrarie. La funzione segue il prototipo di LPD3DXIMTSIGNALCALLBACK.

pUserData [in]

Tipo: VOID*

Puntatore a un valore definito dall'utente passato alla funzione di callback del segnale. In genere usato da un'applicazione per passare un puntatore a una struttura di dati che fornisce informazioni di contesto per la funzione di callback.

pStatusCallback

Tipo: LPD3DXUVATLASCB

Puntatore a una funzione di callback per monitorare lo stato di calcolo di IMT.

pUserContext

Tipo: LPVOID

Puntatore a una variabile definita dall'utente che viene passata alla funzione di callback di stato. In genere usato da un'applicazione per passare un puntatore a una struttura di dati che fornisce informazioni di contesto per la funzione di callback.

ppIMTData [out]

Tipo: LPD3DXBUFFER*

Puntatore al buffer (vedere ID3DXBuffer) contenente la matrice IMT restituita. Questa matrice può essere fornita come input per le funzioni UVAtlas D3DX per assegnare priorità all'allocazione dello spazio della trama nella parametrizzazione della trama.

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, il valore restituito è D3D_OK; in caso contrario, il valore è D3DERR_INVALIDCALL.

Commenti

Questa funzione richiede che la mesh di input contenga un mapping trama da segnale a mesh (ad esempio coordinate trama). Consente all'utente di definire un segnale arbitrariamente sulla superficie della mesh.

Requisiti

Requisito Valore
Intestazione
D3DX9Mesh.h
Libreria
D3dx9.lib

Vedi anche

Funzioni UVAtlas

Uso di UVAtlas (Direct3D 9)