Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Optionen zum Speichern und Erstellen von Effekten.
Die Konstanten in der folgenden Tabelle werden in d3dx9effect.h definiert.
| Speichern und Wiederherstellen von Flags für Effektstatus | Beschreibung | |
| D3DXFX_DONOTSAVESTATE | Beim Aufrufen von Begin oder beim Aufrufen von Endwird kein Zustand gespeichert. | |
| D3DXFX_DONOTSAVESAMPLERSTATE | Ein Zustandsblock speichert den Zustand beim Aufrufen von Begin und stellt den Zustand beim Aufrufen Endwieder her. | |
| D3DXFX_DONOTSAVESHADERSTATE | Ein Stateblock speichert den Zustand (mit Ausnahme von Shadern und Shaderkonstanten) beim Aufrufen Begin und stellt den Zustand beim Aufrufen Endwieder her. | |
| Kennzeichnungen für die Effekterstellung | Beschreibung | |
| D3DXFX_NOT_CLONEABLE | Der Effekt ist nicht klonbar und enthält keine Shader-Binärdaten. GetPassDesc- gibt keine Shaderfunktionszeiger zurück. Das Festlegen dieses Flags reduziert die Speicherauslastung auf etwa 50%, da dadurch die Notwendigkeit des Effektsystems beseitigt wird, eine Kopie der Shader im Arbeitsspeicher zu behalten. Dieses Flag wird von D3DXCreateEffect, D3DXCreateEffectFromFileund D3DXCreateEffectFromResourceverwendet. | |
| D3DXFX_LARGEADDRESSAWARE | Ermöglicht die Zuordnung einer Effektressource in den Adressraum einer Maschine. Eine wichtige Einschränkung besteht darin, dass Sie keine Zeichenfolgen und Handles austauschbar verwenden können. Beispielsweise würde folgendes nicht mehr funktionieren.
Stattdessen muss eine Methode wie GetParameterByName- verwendet werden, um das Handle des Parameters zu speichern, der dann zum Übergeben von Variablen an den Effekt verwendet wird. |
Die Konstanten in der folgenden Tabelle sind nicht standardmäßig definiert und müssen vom Entwickler definiert werden.
| Effektvorprozessor #define | Beschreibung |
|---|---|
| D3DXFX_LARGEADDRESS_HANDLE | Definieren Sie diesen Wert, bevor Sie d3dx9.h einschließen, damit die Anwendung beim Versuch, Zeichenfolgen an D3DXHANDLE Parameter zu übergeben, nicht kompiliert werden kann. Dadurch wird sichergestellt, dass gültige Informationen an die Laufzeit übergeben werden. |
| Effektlinkerkennzeichnungen | Beschreibung |
| LARGE_ADDRESS_AWARE | Wenn Sie das Linker-Flag LARGE_ADDRESS_AWARE = 1 festlegen, kann die Anwendung Ressourcen nach Bedarf über das Adresslimit von 2 GB zuordnen. |
Das Effektsystem verwendet Zustandsblöcke, um den Zustand automatisch zu speichern und wiederherzustellen. Weitere Informationen zu Statusblöcken finden Sie unter Zustandsblöcke Speichern und Wiederherstellen des Zustands (Direct3D 9).
Verwandte Themen