Share via


D3DXCreateEffectFromFile-Funktion

Erstellen Sie einen Effekt aus einer ASCII- oder binären Effektbeschreibung.

Syntax

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
);

Parameter

pDevice [in]

Typ: LPDIRECT3DDEVICE9

Zeiger auf das Gerät, das den Effekt erzeugt. Siehe IDirect3DDevice9.

pSrcFile [in]

Typ: LPCTSTR

Zeiger auf den Dateinamen. Dieser Parameter unterstützt sowohl Unicode- als auch ANSI-Zeichenfolgen. Siehe Hinweise.

pDefines [in]

Typ: const D3DXMACRO*

Optionales NULL-beendetes Array von Präprozessormakrodefinitionen. Siehe D3DXMACRO.

pInclude [in]

Typ: LPD3DXINCLUDE

Optionaler Schnittstellenzeiger ID3DXInclude, der für die Verarbeitung #include-Direktiven verwendet werden soll. Wenn dieser Wert NULL ist, wird #includes entweder beim Kompilieren aus einer Datei berücksichtigt oder verursacht einen Fehler, wenn er aus einer Ressource oder einem Arbeitsspeicher kompiliert wird.

Flaggen [in]

Typ: DWORD

Wenn pSrcFile einen Texteffekt enthält, können Flags eine Kombination aus D3DXSHADER-Flags und D3DXFX-Flags sein. Andernfalls enthält pSrcFile 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 Effect-Compiler Tool .

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 Zeiger auf einen Puffer zurück, der den kompilierten Effekt enthält. Siehe ID3DXEffect.

ppCompilationErrors [out]

Typ: LPD3DXBUFFER*

Gibt einen Zeiger auf einen Puffer zurück, der eine Auflistung von Kompilierfehlern enthält. Siehe ID3DXBuffer.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.

Bemerkungen

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 D3DXCreateEffectFromFileW aufgelöst. Andernfalls wird der Funktionsaufruf in D3DXCreateEffectFromFileA aufgelöst, da ANSI-Zeichenfolgen verwendet werden.

Anforderungen

Anforderung Wert
Header
D3DX9Effect.h
Bibliothek
D3dx9.lib

Siehe auch

Effektfunktionen

D3DXCompileShader

D3DXCompileShaderFromResource