D3DX10CompileFromMemory fonction)
Notes
Au lieu d’utiliser cette fonction héritée, nous vous recommandons de compiler hors connexion à l’aide du compilateur de ligne de commande Fxc.exe ou d’utiliser l’API D3DCompile .
Compilez un nuanceur ou un effet qui est chargé en mémoire.
Syntaxe
HRESULT D3DX10CompileFromMemory(
_In_ LPCSTR pSrcData,
_In_ SIZE_T SrcDataLen,
_In_ LPCSTR pFileName,
_In_ const D3D10_SHADER_MACRO *pDefines,
_In_ LPD3D10INCLUDE pInclude,
_In_ LPCSTR pFunctionName,
_In_ LPCSTR pProfile,
_In_ UINT Flags1,
_In_ UINT Flags2,
_In_ ID3DX10ThreadPump *pPump,
_Out_ ID3D10Blob **ppShader,
_Out_ ID3D10Blob **ppErrorMsgs,
_Out_ HRESULT *pHResult
);
Paramètres
-
pSrcData [ dans]
-
Type : LPCSTR
Pointeur vers le nuanceur en mémoire.
-
SrcDataLen [ dans]
-
Type : taille _ T
Taille du nuanceur en mémoire.
-
pFileName [ dans]
-
Type : LPCSTR
Nom du fichier qui contient le code du nuanceur.
-
pDefines [ dans]
-
Type : * macro de _ nuanceur _ D3D const
facultatif. Pointeur vers un tableau de définitions de macros (consultez la _ _ macro de nuanceur D3D). La dernière structure du tableau sert de terminateur et doit avoir tous les membres définis sur 0. S’il n’est pas utilisé, affectez la valeur null à pDefines .
-
pInclude [ dans]
-
Type : LPD3D10INCLUDE
facultatif. Pointeur vers une interface d' interface ID3D10Include pour la gestion des fichiers include. Si vous affectez la valeur null , une erreur de compilation se produira si un nuanceur contient un # include.
-
pFunctionName [ dans]
-
Type : LPCSTR
Nom de la fonction de point d’entrée du nuanceur où commence l’exécution du nuanceur. Quand vous compilez un effet, D3DX10CompileFromMemory ignore pFunctionName; Nous vous recommandons de définir pFunctionName sur null , car il s’agit d’une bonne pratique de programmation qui consiste à définir un paramètre de pointeur sur la valeur null si la fonction appelée ne l’utilise pas.
-
pProfile [ dans]
-
Type : LPCSTR
Chaîne qui spécifie le modèle de nuanceur ; peut être n’importe quel profil dans le Shader Model 2, Shader Model 3ou Shader Model 4.
-
Flags1 [ dans]
-
Type : uint
-
Flags2 [ dans]
-
Type : uint
Indicateurs de compilation Effect. Quand vous compilez un nuanceur et non un fichier Effect, D3DX10CompileFromMemory ignore flags2; Nous vous recommandons de définir flags2 sur zéro, car il s’agit d’une bonne pratique de programmation qui consiste à définir un paramètre de non-pointeur sur zéro si la fonction appelée ne l’utilise pas.
-
pPump [ dans]
-
Type : ID3DX10ThreadPump*
Pointeur vers une interface de pompage de thread (voir interface ID3DX10ThreadPump). Utilisez null pour spécifier que cette fonction ne doit pas être retournée tant qu’elle n’est pas terminée.
-
ppShader [ à]
-
Type : ID3D10Blob**
Pointeur vers une interface ID3D10Blob qui contient le nuanceur compilé, ainsi que toutes les informations de débogage et de table de symboles incorporées.
-
ppErrorMsgs [ à]
-
Type : ID3D10Blob**
Pointeur vers une interface ID3D10Blob qui contient une liste d’erreurs et d’avertissements qui se sont produits pendant la compilation. Ces erreurs et avertissements sont identiques à la sortie de débogage d’un débogueur.
-
pHResult [ à]
-
Type : HRESULT*
Pointeur vers la valeur de retour. Peut avoir la valeur null. Si pPump n’a pas la valeur null, pHResult doit être un emplacement de mémoire valide jusqu’à ce que l’exécution asynchrone se termine.
Valeur de retour
Type : HRESULT
La valeur de retour est l’une des valeurs indiquées dans les codes de retour Direct3D 10.
Spécifications
| Condition requise | Valeur |
|---|---|
| En-tête |
|