Condividi tramite


Enumerazione D3DXTANGENT

Definisce le impostazioni usate per i calcoli dei fotogrammi tangenti mesh.

Sintassi

typedef enum D3DXTANGENT { 
  D3DXTANGENT_WRAP_U                   = 0x01,
  D3DXTANGENT_WRAP_V                   = 0x02,
  D3DXTANGENT_WRAP_UV                  = 0x03,
  D3DXTANGENT_DONT_NORMALIZE_PARTIALS  = 0x04,
  D3DXTANGENT_DONT_ORTHOGONALIZE       = 0x08,
  D3DXTANGENT_ORTHOGONALIZE_FROM_V     = 0x010,
  D3DXTANGENT_ORTHOGONALIZE_FROM_U     = 0x020,
  D3DXTANGENT_WEIGHT_BY_AREA           = 0x040,
  D3DXTANGENT_WEIGHT_EQUAL             = 0x080,
  D3DXTANGENT_WIND_CW                  = 0x0100,
  D3DXTANGENT_CALCULATE_NORMALS        = 0x0200,
  D3DXTANGENT_GENERATE_IN_PLACE        = 0x0400
} D3DXTANGENT, *LPD3DXTANGENT;

Costanti

D3DXTANGENT_WRAP_U

I valori delle coordinate della trama nella direzione u sono compresi tra 0 e 1. In questo caso verrà scelto un set di coordinate della trama che riduce al minimo il perimetro del triangolo. Vedi Wrapping delle trame (Direct3D 9).

D3DXTANGENT_WRAP_V

I valori delle coordinate della trama nella direzione v sono compresi tra 0 e 1. In questo caso verrà scelto un set di coordinate della trama che riduce al minimo il perimetro del triangolo. Vedi Wrapping delle trame (Direct3D 9).

D3DXTANGENT_WRAP_UV

I valori delle coordinate delle trame in entrambe le direzioni sono compresi tra 0 e 1. In questo caso verrà scelto un set di coordinate della trama che riduce al minimo il perimetro del triangolo. Vedi Wrapping delle trame (Direct3D 9).

D3DXTANGENT_DONT_NORMALIZE_PARTIALS

Non normalizzare derivati parziali rispetto alle coordinate della trama. Se non viene normalizzata, la scala dei derivati parziali è proporzionale alla scala del modello 3D diviso per la scala del triangolo nello spazio (u, v). Questo valore di scala fornisce una misura della quantità di trama estesa in una determinata direzione. La lunghezza del vettore risultante è una somma ponderata delle lunghezze dei derivati parziali.

D3DXTANGENT_DONT_ORTHOGONALIZE

Non trasformare le coordinate della trama in coordinate cartesiane ortogonali. Si escludono a vicenda con D3DXTANGENT_ORTHOGONALIZE_FROM_U e D3DXTANGENT_ORTHOGONALIZE_FROM_V.

D3DXTANGENT_ORTHOGONALIZE_FROM_V

Calcolare la derivata parziale rispetto alla coordinata della trama v in modo indipendente per ogni vertice e quindi calcolare la derivata parziale rispetto all'utente come prodotto incrociato del derivato parziale rispetto a v e al vettore normale. Si escludono a vicenda con D3DXTANGENT_DONT_ORTHOGONALIZE e D3DXTANGENT_ORTHOGONALIZE_FROM_U.

D3DXTANGENT_ORTHOGONALIZE_FROM_U

Calcolare la derivata parziale rispetto alla coordinata della trama u in modo indipendente per ogni vertice e quindi calcolare la derivata parziale rispetto a v come prodotto incrociato del vettore normale e del derivato parziale rispetto all'utente. Si escludono a vicenda con D3DXTANGENT_DONT_ORTHOGONALIZE e D3DXTANGENT_ORTHOGONALIZE_FROM_V.

D3DXTANGENT_WEIGHT_BY_AREA

Ponderare la direzione del vettore di derivazione normale o parziale calcolata per vertice in base alle aree dei triangoli collegati al vertice. Si escludono a vicenda con D3DXTANGENT_WEIGHT_EQUAL.

D3DXTANGENT_WEIGHT_EQUAL

Calcolare un vettore normale di lunghezza unità per ogni triangolo della mesh di input. Si escludono a vicenda con D3DXTANGENT_WEIGHT_BY_AREA.

D3DXTANGENT_WIND_CW

I vertici vengono ordinati in senso orario intorno a ogni triangolo. La direzione del vettore normale calcolata è quindi invertita a 180 gradi dalla direzione calcolata usando l'ordinamento dei vertici antiorario.

D3DXTANGENT_CALCULATE_NORMALS

Calcolare il vettore normale per vertice per ogni triangolo della mesh di input e ignorare tutti i vettori normali già presenti nella mesh di input.

D3DXTANGENT_GENERATE_IN_PLACE

I risultati vengono archiviati nella mesh di input originale e la mesh di output non viene usata.

Requisiti

Requisito Valore
Intestazione
D3dx9mesh.h

Vedi anche

Enumerazioni D3DX

D3DXComputeTangentFrameEx