Partager via


Méthode IDirect3DDevice9 ::CreateVertexShader (d3d9.h)

Crée un nuanceur de vertex.

Syntaxe

HRESULT CreateVertexShader(
  [in]          const DWORD            *pFunction,
  [out, retval] IDirect3DVertexShader9 **ppShader
);

Paramètres

[in] pFunction

Type : const DWORD*

Pointeur vers un tableau de jetons qui représente le nuanceur de vertex, y compris les informations de table de symboles et de débogage incorporés.

  • Utilisez une fonction telle que D3DXCompileShader pour créer le tableau à partir d’un nuanceur HLSL.
  • Utilisez une fonction telle que D3DXAssembleShader pour créer le tableau de jetons à partir d’un nuanceur de langage d’assembly.
  • Utilisez une fonction telle que ID3DXEffectCompiler ::CompileShader pour créer le tableau à partir d’un effet.

[out, retval] ppShader

Type : IDirect3DVertexShader9**

Pointeur vers l’interface de nuanceur de vertex retournée (voir IDirect3DVertexShader9).

Valeur retournée

Type : HRESULT

Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.

Remarques

Lorsqu’un appareil est créé, IDirect3D9 ::CreateDevice utilise l’indicateur de comportement pour déterminer s’il faut traiter les sommets dans le matériel ou les logiciels. Trois options sont possibles :

  • Traiter les sommets dans le matériel en définissant D3DCREATE_HARDWARE_VERTEXPROCESSING.
  • Traitez les sommets dans le logiciel en définissant D3DCREATE_SOFTWARE_VERTEXPROCESSING.
  • Traitez les sommets dans le matériel ou le logiciel en définissant D3DCREATE_MIXED_VERTEXPROCESSING. Pour basculer un appareil en mode mixte entre le traitement logiciel et le traitement matériel, utilisez IDirect3DDevice9 ::SetSoftwareVertexProcessing.
Pour obtenir un exemple utilisant D3DXCompileShader, consultez L’exemple HLSLwithoutEffects.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête d3d9.h (inclure D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DDevice9