D3DXCreateEffectFromResourceEx-Funktion
Erstellen Sie einen Effekt aus einer ASCII- oder binären Effektbeschreibung. Dies ist eine erweiterte Version von D3DXCreateEffectFromResource, mit der eine Anwendung steuern kann, welche Parameter vom Effektsystem ignoriert werden.
Syntax
HRESULT D3DXCreateEffectFromResourceEx(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ HMODULE hSrcModule,
_In_ LPCTSTR pSrcResource,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_In_ LPCSTR pSkipConstants,
_In_ DWORD Flags,
_In_ LPD3DXEFFECTPOOL pPool,
_Out_ LPD3DXEFFECT *ppEffect,
_Out_ LPD3DXBUFFER *ppCompilationErrors
);
Parameter
-
pDevice [ In]
-
Typ: LPDIRECT3DDEVICE9
Zeiger auf das Gerät.
-
hSrcModule [ In]
-
Typ: HMODULE
Handle für ein Modul, das die Beschreibung des Effekts enthält. Wenn dieser Parameter NULL ist, wird das aktuelle Modul verwendet.
-
pSrcResource [ In]
-
Typ: LPCTSTR
Zeiger auf die Ressource. Dieser Parameter unterstützt sowohl Unicode- als auch ANSI-Zeichenfolgen. Siehe Hinweise.
-
pDefine [ In]
-
Typ: const D3DXMACRO *
Ein optionales NULL-terminiertes Array von D3DXMACRO-Strukturen, die Präprozessordefinitionen beschreiben. Dieser Wert kann NULL sein.
-
pInclude [ In]
-
Typ: LPD3DXINCLUDE
Optionaler Schnittstellenzeiger ID3DXInclude, der für die Behandlung von # Includedirektiven verwendet werden soll. Wenn dieser Wert NULL ist, # wird includes entweder beim Kompilieren aus einer Datei berücksichtigt oder verursacht bei der Kompilierung aus einer Ressource oder aus dem Arbeitsspeicher einen Fehler.
-
pSkipConstants [ In]
-
Typ: LPCSTR
Eine Zeichenfolge von Effektparametern, die vom Effektsystem ignoriert werden. Die Zeichenfolge muss NULL-terminiert sein und den Namen jeder von der Anwendung verwalteten Konstante enthalten, die durch ein Semikolon getrennt ist.
-
Flags [ In]
-
Typ: DWORD
Wenn pSrcResource einen Texteffekt enthält, können Flags eine Kombination aus D3DXSHADER-Flags und D3DXFX-Flags sein. Andernfalls enthält pSrcResource einen binären Effekt, und die einzigen berücksichtigten Flags sind D3DXFX-Flags. Der Direct3D 10 HLSL-Compiler ist jetzt die Standardeinstellung. Weitere Informationen finden Sie unter Effektcompilertool.
-
pPool [ In]
-
Typ: LPD3DXEFFECTPOOL
Zeiger auf ein ID3DXEffectPool-Objekt, das für freigegebene Parameter verwendet werden soll. Wenn dieser Wert NULL ist, werden keine Parameter freigegeben.
-
ppEffect [ out]
-
Typ: LPD3DXEFFECT*
Gibt einen Puffer zurück, der den kompilierten Effekt enthält.
-
ppCompilationErrors [ out]
-
Typ: LPD3DXBUFFER*
Gibt einen Puffer zurück, der eine Auflistung von Kompilierungsfehlern enthält.
Rückgabewert
Typ: HRESULT
Wenn die Funktion erfolgreich ausgeführt wird, lautet der Rückgabewert D3D _ OK. Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden Werte sein: D3DERR _ INVALIDCALL, D3DXERR _ INVALIDDATA, E _ OUTOFMEMORY.
Hinweise
Diese Funktion ist eine erweiterte Version von D3DXCreateEffectFromResource, mit der eine Anwendung angeben kann, welche Effektkonstanten von der Anwendung verwaltet werden. Eine Konstante, die von der Anwendung verwaltet wird, wird vom Effektsystem ignoriert. Das heißt, die Anwendung ist für die Initialisierung der Konstante sowie für das Speichern und Wiederherstellen ihres Zustands verantwortlich, sofern dies angemessen ist.
Diese Funktion überprüft jede Konstante in pSkipConstants, um Dies zu überprüfen:
- Sie ist an ein Konstantenregister gebunden.
- Sie wird nur im HLSL-Shadercode verwendet.
Wenn eine Konstante in der Zeichenfolge benannt wird, die im Effekt nicht vorhanden ist, wird sie ignoriert.
Wenn die Compilereinstellungen Unicode erfordern, wird der Datentyp LPCTSTR in LPCWSTR aufgelöst. Andernfalls wird der LPCTSTR-Datentyp in LPCSTR aufgelöst.
Die Compilereinstellung bestimmt auch die Funktionsversion. Wenn Unicode definiert ist, wird der Funktionsaufruf in D3DXCreateEffectFromResourceW aufgelöst. Andernfalls wird der Funktionsaufruf in D3DXCreateEffectFromResourceA aufgelöst, da ANSI-Zeichenfolgen verwendet werden.
D3DXCreateEffectFromResource lädt Daten aus einer Ressource vom Typ RT _ RCDATA. Weitere Informationen zu Windows Ressourcen finden Sie unter MSDN.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|
| Bibliothek |
|