Partager via


D3DXCreateEffect, fonction

Créez un effet à partir d’une description d’effet ASCII ou binaire.

Syntaxe

HRESULT D3DXCreateEffect(
  _In_        LPDIRECT3DDEVICE9 pDevice,
  _In_        LPCVOID           pSrcData,
  _In_        UINT              SrcDataLen,
  _In_  const D3DXMACRO         *pDefines,
  _In_        LPD3DXINCLUDE     pInclude,
  _In_        DWORD             Flags,
  _In_        LPD3DXEFFECTPOOL  pPool,
  _Out_       LPD3DXEFFECT      *ppEffect,
  _Out_       LPD3DXBUFFER      *ppCompilationErrors
);

Paramètres

pDevice [in]

Type : LPDIRECT3DDEVICE9

Pointeur vers l’appareil qui créera l’effet. Consultez IDirect3DDevice9.

pSrcData [in]

Type : LPCVOID

Pointeur vers une mémoire tampon contenant une description d’effet.

SrcDataLen [in]

Type : UINT

Longueur des données d’effet, en octets.

pDefines [in]

Type : const D3DXMACRO*

Tableau facultatif terminé par null de structures D3DXMACRO qui décrivent des définitions de préprocesseur. Cette valeur peut être NULL.

pInclude [in]

Type : LPD3DXINCLUDE

Pointeur d’interface facultatif, ID3DXInclude, à utiliser pour la gestion des directives #include. Si cette valeur est NULL, #includes sera respecté lors de la compilation à partir d’un fichier ou provoquera une erreur lors de la compilation à partir d’une ressource ou d’une mémoire.

Indicateurs [in]

Type : DWORD

Si pSrcData contient un effet de texte, les indicateurs peuvent être une combinaison d’indicateurs D3DXSHADER et d’indicateurs D3DXFX ; sinon, pSrcData contient un effet binaire et les seuls indicateurs respectés sont des indicateurs D3DXFX. Le compilateur HLSL Direct3D 10 est désormais la valeur par défaut. Pour plus d’informations, consultez Effect-Compiler Tool .

pPool [in]

Type : LPD3DXEFFECTPOOL

Pointeur vers un objet ID3DXEffectPool à utiliser pour les paramètres partagés. Si cette valeur est NULL, aucun paramètre n’est partagé.

ppEffect [out]

Type : LPD3DXEFFECT*

Retourne un pointeur vers une interface ID3DXEffect .

ppCompilationErrors [out]

Type : LPD3DXBUFFER*

Retourne une mémoire tampon contenant une liste d’erreurs de compilation.

Valeur retournée

Type : HRESULT

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

Spécifications

Condition requise Valeur
En-tête
D3DX9Effect.h
Bibliothèque
D3dx9.lib

Voir aussi

Fonctions d’effet

D3DXCompileShader

D3DXCompileShaderFromResource