D3D10CreateEffectFromMemory, fonction (d3d10effect.h)
Crée un ID3D10Effect à partir d’une mémoire tampon contenant un effet compilé.
Syntaxe
HRESULT D3D10CreateEffectFromMemory(
[in] void *pData,
[in] SIZE_T DataLength,
[in] UINT FXFlags,
[in] ID3D10Device *pDevice,
[in] ID3D10EffectPool *pEffectPool,
[out] ID3D10Effect **ppEffect
);
Paramètres
[in] pData
Type : void*
Pointeur vers un effet compilé.
[in] DataLength
Type : SIZE_T
Longueur de pData.
[in] FXFlags
Type : UINT
Options de compilation des effets.
[in] pDevice
Type : ID3D10Device*
Pointeur vers l’appareil (voir INTERFACE ID3D10Device).
[in] pEffectPool
Type : ID3D10EffectPool*
facultatif. Pointeur vers un espace mémoire pour les variables d’effet partagées entre les effets (voir ID3D10EffectPool Interface).
[out] ppEffect
Type : ID3D10Effect**
Pointeur vers une interface ID3D10Effect qui contient l’effet créé.
Valeur renvoyée
Type : HRESULT
Retourne l’un des codes de retour Direct3D 10 suivants.
Notes
Notes
La liaison d3d10_1.lib
vous donne l’implémentation dans d3d10_1.dll
, qui est l’implémentation du modèle de programmation Direct3D10.1. La liaison d3d10.lib
vous donne l’implémentation dans d3d10.dll
, qui est l’implémentation du modèle de programmation Direct3D10.
Cette méthode est utilisée pour créer un objet INTERFACE ID3D10Effect à partir d’un effet compilé avant l’exécution et chargé en mémoire. Pour obtenir de l’aide sur la précompilation d’un effet, consultez Compilation hors connexion. Pour charger et compiler un fichier .fx ASCII, consultez Compiler un effet (Direct3D 10).
Exemples
Compiler l’effet
fxc.exe /T fx_4_0 /Fo Tutorial03.fxo Tutorial03.fx
Chargez l’effet compilé au moment de l’exécution.
ifstream is("tutorial03.fxo", ios::binary);
is.seekg(0,ios_base::end);
streampos pos = is.tellg();
is.seekg(0,ios_base::beg);
char * effectBuffer = new char[pos];
is.read(effectBuffer,pos);
hr = D3D10CreateEffectFromMemory((void *)effectBuffer,pos,0,g_pd3dDevice,NULL,&g_pEffect);
Configuration requise
Plateforme cible | Windows |
En-tête | d3d10effect.h |
Bibliothèque | d3d10_1.lib, d3d10.lib |
DLL | d3d10_1.dll, d3d10.dll |