Énumération D3DDECLMETHOD

Définit la méthode de déclaration de vertex qui est une opération prédéfinie effectuée par le tessellateur (ou toute routine de géométrie procédurale sur les données de vertex pendant le pavage).

Syntaxe

typedef enum D3DDECLMETHOD { 
  D3DDECLMETHOD_DEFAULT           = 0,
  D3DDECLMETHOD_PARTIALU          = 1,
  D3DDECLMETHOD_PARTIALV          = 2,
  D3DDECLMETHOD_CROSSUV           = 3,
  D3DDECLMETHOD_UV                = 4,
  D3DDECLMETHOD_LOOKUP            = 5,
  D3DDECLMETHOD_LOOKUPPRESAMPLED  = 6
} D3DDECLMETHOD, *LPD3DDECLMETHOD;

Constantes

D3DDECLMETHOD_DEFAULT

Valeur par défaut. Le tessellateur copie les données de vertex (données spline pour les correctifs) telles quelles, sans calcul supplémentaire. Lorsque le tessellateur est utilisé, cet élément est interpolé. Sinon, les données de vertex sont copiées dans le registre d’entrée. Les types d’entrée et de sortie peuvent être n’importe quelle valeur, mais sont toujours du même type.

D3DDECLMETHOD_PARTIALU

Calcule la tangente à un point du rectangle ou du triangle dans la direction U. Le type d’entrée peut être l’un des suivants :

  • D3DDECLTYPE_D3DCOLOR
  • D3DDECLTYPE_FLOAT3
  • D3DDECLTYPE_FLOAT4
  • D3DDECLTYPE_SHORT4
  • D3DDECLTYPE_UBYTE4

Le type de sortie est toujours D3DDECLTYPE_FLOAT3.

D3DDECLMETHOD_PARTIALV

Calcule la tangente à un point sur le rectangle ou le triangle dans la direction V. Le type d’entrée peut être l’un des suivants :

  • D3DDECLTYPE_D3DCOLOR
  • D3DDECLTYPE_FLOAT3
  • D3DDECLTYPE_FLOAT4
  • D3DDECLTYPE_SHORT4
  • D3DDECLTYPE_UBYTE4

Le type de sortie est toujours D3DDECLTYPE_FLOAT3.

D3DDECLMETHOD_CROSSUV

Calcule la normale à un point du rectangle ou du triangle en prenant le produit croisé de deux tangentes. Le type d’entrée peut être l’un des suivants :

  • D3DDECLTYPE_D3DCOLOR
  • D3DDECLTYPE_FLOAT3
  • D3DDECLTYPE_FLOAT4
  • D3DDECLTYPE_SHORT4
  • D3DDECLTYPE_UBYTE4

Le type de sortie est toujours D3DDECLTYPE_FLOAT3.

D3DDECLMETHOD_UV

Copiez les valeurs U, V à un point du rectangle ou du triangle. Il en résulte un float 2D. Le type d’entrée doit être défini sur D3DDECLTYPE_UNUSED. Le type de données de sortie est toujours D3DDECLTYPE_FLOAT2. Le flux d’entrée et le décalage sont également inutilisés (mais doivent être définis sur 0).

D3DDECLMETHOD_LOOKUP

Recherchez une carte de déplacement. Le type d’entrée peut être l’un des suivants :

  • D3DDECLTYPE_FLOAT2
  • D3DDECLTYPE_FLOAT3
  • D3DDECLTYPE_FLOAT4

Seuls les composants .x et .y sont utilisés pour la recherche de mappage de textures. Le type de sortie est toujours D3DDECLTYPE_FLOAT1. L’appareil doit prendre en charge le mappage de déplacement. Pour plus d’informations sur le mappage de déplacement, consultez Mappage de déplacement (Direct3D 9). Cette constante est prise en charge uniquement par le pipeline programmable sur les données N-patch, si les N-patchs sont activés.

D3DDECLMETHOD_LOOKUPPRESAMPLED

Recherchez une carte de déplacement pré-échantillonnée. Le type d’entrée doit être défini sur D3DDECLTYPE_UNUSED ; l’index de flux et le décalage de flux doivent être définis sur 0. Le type de sortie de cette opération est toujours D3DDECLTYPE_FLOAT1. L’appareil doit prendre en charge le mappage de déplacement. Pour plus d’informations sur le mappage de déplacement, consultez Mappage de déplacement (Direct3D 9). Cette constante est prise en charge uniquement par le pipeline programmable sur les données N-patch, si les N-patchs sont activés. Cette méthode ne peut être utilisée qu’avec D3DDECLUSAGE_SAMPLE.

Notes

Le tessellateur examine la méthode pour déterminer les données à calculer à partir des données de vertex pendant le pavage. Les données de maillage doivent utiliser la valeur par défaut. Les correctifs peuvent utiliser n’importe quel autre type implémenté.

Les données de vertex sont déclarées avec un tableau de structures D3DVERTEXELEMENT9 . Chaque élément du tableau contient une méthode de déclaration de vertex.

En plus d’utiliser D3DDECLMETHOD_DEFAULT, un maillage normal peut utiliser des méthodes D3DDECLMETHOD_LOOKUP et D3DDECLMETHOD_LOOKUPPRESAMPLED lorsque les N-patchs sont activés.

Spécifications

Condition requise Valeur
En-tête
D3D9Types.h

Voir aussi

Énumérations Direct3D