Fonction D3DXCreateEffectFromFile

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

Syntaxe

HRESULT D3DXCreateEffectFromFile(
  _In_        LPDIRECT3DDEVICE9 pDevice,
  _In_        LPCTSTR           pSrcFile,
  _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.

pSrcFile [in]

Type : LPCTSTR

Pointeur vers le nom de fichier. Ce paramètre prend en charge les chaînes Unicode et ANSI. Consultez la section Notes.

pDefines [in]

Type : const D3DXMACRO*

Tableau null facultatif de définitions de macros de préprocesseur. Consultez D3DXMACRO.

pInclude [in]

Type : LPD3DXINCLUDE

Pointeur d’interface facultatif, ID3DXInclude, à utiliser pour gérer les directives #include. Si cette valeur a la valeur 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 pSrcFile contient un effet de texte, les indicateurs peuvent être une combinaison d’indicateurs D3DXSHADER et d’indicateurs D3DXFX ; sinon, pSrcFile 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 a la valeur NULL, aucun paramètre n’est partagé.

ppEffect [out]

Type : LPD3DXEFFECT*

Retourne un pointeur vers une mémoire tampon contenant l’effet compilé. Consultez ID3DXEffect.

ppCompilationErrors [out]

Type : LPD3DXBUFFER*

Retourne un pointeur vers une mémoire tampon contenant une liste des erreurs de compilation. Consultez ID3DXBuffer.

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.

Notes

Si les paramètres du compilateur nécessitent Unicode, le type de données LPCTSTR est résolu en LPCWSTR. Sinon, le type de données LPCTSTR est résolu en LPCSTR.

Le paramètre du compilateur détermine également la version de la fonction. Si Unicode est défini, l’appel de fonction est résolu en D3DXCreateEffectFromFileW. Sinon, l’appel de fonction est résolu en D3DXCreateEffectFromFileA, car les chaînes ANSI sont utilisées.

Spécifications

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

Voir aussi

Fonctions d’effet

D3DXCompileShader

D3DXCompileShaderFromResource