D3DERR
Im Folgenden finden Sie eine Liste der Werte, die von Direct3D-Methoden zurückgegeben werden können. In den Beschreibungen der einzelnen Methoden finden Sie Listen der Werte, die jeweils zurückgegeben werden können.
Konstante | BESCHREIBUNG |
---|---|
|
Dies ist ein Erfolgscode. Die automatische Generierung von mipmaps wird für dieses Format jedoch nicht unterstützt. Dies bedeutet, dass die Ressourcenerstellung erfolgreich ist, aber die mipmap-Ebenen nicht automatisch generiert werden. |
|
Die aktuell festgelegten Renderzustände können nicht zusammen verwendet werden. |
|
Die aktuellen Texturfilter können nicht zusammen verwendet werden. |
|
Die aktuellen Texturen können nicht gleichzeitig verwendet werden. |
|
Das Gerät, das diesen Code zurückgegeben hat, hat dazu geführt, dass der Hardwareadapter vom Betriebssystem zurückgesetzt wurde. Die meisten Anwendungen sollten das Gerät zerstören und beenden. Anwendungen, die fortgesetzt werden müssen, sollten alle Videospeicherobjekte (Oberflächen, Texturen, Zustandsblöcke usw.) zerstören und Reset() aufrufen, um das Gerät in einen Standardzustand zu versetzen. Wenn die Anwendung das Rendern dann auf die gleiche Weise fortsetzt, kehrt das Gerät in diesen Zustand zurück. Gilt nur für Direct3D 9Ex. |
|
Das Gerät ist verloren gegangen, kann aber zu diesem Zeitpunkt nicht zurückgesetzt werden. Daher ist das Rendern nicht möglich. Ein anderes Direct3D-Geräteobjekt als das, das diesen Code zurückgegeben hat, hat dazu geführt, dass der Hardwareadapter vom Betriebssystem zurückgesetzt wurde. Löschen Sie alle Videospeicherobjekte (Oberflächen, Texturen, Zustandsblöcke), und rufen Sie Reset() auf, um das Gerät in den Standardzustand zurückzusetzen. Wenn die Anwendung das Rendern ohne Zurücksetzen fortsetzt, werden die Renderingaufrufe erfolgreich ausgeführt. |
|
Das Gerät ist verloren gegangen, kann aber zu diesem Zeitpunkt zurückgesetzt werden. |
|
Der Hardwareadapter wurde entfernt. Die Anwendung muss das Gerät zerstören, eine Enumeration von Adaptern durchführen und ein weiteres Direct3D-Gerät erstellen. Wenn die Anwendung das Rendern ohne Aufrufen von Reset fortsetzt, werden die Renderingaufrufe erfolgreich ausgeführt. Gilt nur für Direct3D 9Ex. |
|
Interner Treiberfehler. Anwendungen sollten das Gerät zerstören und neu erstellen, wenn dieser Fehler empfangen wird. Hinweise zum Debuggen dieses Fehlers finden Sie unter Treiberinterne Fehler (Direct3D 9). |
|
Wird nicht verwendet. |
|
Der Methodenaufruf ist ungültig. Beispielsweise ist der Parameter einer Methode möglicherweise kein gültiger Zeiger. |
|
Der angeforderte Gerätetyp ist ungültig. |
|
Es sind mehr Daten verfügbar, als die angegebene Puffergröße enthalten kann. |
|
Dieses Gerät unterstützt die abgefragte Technik nicht. |
|
Das angeforderte Element wurde nicht gefunden. |
|
Kein Fehler ist aufgetreten. |
|
Direct3D verfügt nicht über genügend Anzeigespeicher, um den Vorgang auszuführen. Das Gerät benötigt mehr Ressourcen in einer einzelnen Szene, als gleichzeitig in den Videospeicher passen kann.
Present, PresentEx oder CheckDeviceState können diesen Fehler zurückgeben. Die Wiederherstellung ähnelt D3DERR_DEVICEHUNG, obwohl die Anwendung möglicherweise auch die Arbeitsspeicherauslastung pro Frame reduzieren möchte, um zu vermeiden, dass der Fehler erneut auftritt. |
|
Die Anwendung fordert mehr Texturfiltervorgänge an, als das Gerät unterstützt. |
|
Das Gerät unterstützt kein angegebenes Texturmischungsargument für den Alphakanal. |
|
Das Gerät unterstützt keinen angegebenen Texturmischungsvorgang für den Alphakanal. |
|
Das Gerät unterstützt kein angegebenes Texturmischungsargument für Farbwerte. |
|
Das Gerät unterstützt keinen angegebenen Texturmischungsvorgang für Farbwerte. |
|
Das Gerät unterstützt den angegebenen Texturfaktorwert nicht. Nicht verwendet; wird nur bereitgestellt, um ältere Treiber zu unterstützen. |
|
Das Gerät unterstützt den angegebenen Texturfilter nicht. |
|
Der vorherige blit-Vorgang, der Informationen an oder von dieser Oberfläche überträgt, ist unvollständig. |
|
Das Pixelformat der Texturoberfläche ist ungültig. |
|
Innerhalb des Direct3D-Subsystems ist ein nicht festgelegter Fehler aufgetreten. |
|
Ein ungültiger Parameter wurde an die zurückgebende Funktion übergeben. |
|
Der Methodenaufruf ist ungültig. Beispielsweise kann der Parameter einer Methode einen ungültigen Wert aufweisen. |
|
Es ist keine Objektschnittstelle verfügbar. |
|
Nicht implementiert. |
|
Direct3D konnte nicht genügend Arbeitsspeicher zuweisen, um den Aufruf abzuschließen. |
|
Kein Fehler ist aufgetreten. |
|
Mindestens eine Zuordnung, die die Ressourcen umfasst, befindet sich auf dem Datenträger. Nur Direct3D 9Ex. |
|
Auf dem Datenträger befinden sich keine Zuordnungen, die die Ressourcen umfassen. Mindestens eine Zuordnung befindet sich jedoch nicht im Speicher, auf den GPU zugegriffen werden kann. Nur Direct3D 9Ex. |
|
Der Desktopanzeigemodus wurde geändert. Die Anwendung kann das Rendern fortsetzen, es kann jedoch zu Farbkonvertierungen/-dehnungen kommen. Wählen Sie ein Zurückpufferformat aus, das dem aktuellen Anzeigemodus ähnelt, und rufen Sie Zurücksetzen auf, um die Swapchains neu zu erstellen. Das Gerät verlässt diesen Zustand, nachdem ein Zurücksetzen aufgerufen wurde. Nur Direct3D 9Ex. |
|
Der Präsentationsbereich ist verworren. Okklusion bedeutet, dass das Präsentationsfenster minimiert wird oder ein anderes Gerät auf demselben Monitor wie das Präsentationsfenster in den Vollbildmodus wechselt und sich das Präsentationsfenster vollständig auf diesem Monitor befindet. Die Verdeckung tritt nicht auf, wenn der Clientbereich von einem anderen Fenster abgedeckt wird. Verworrene Anwendungen können weiterhin gerendert werden, und alle Aufrufe sind erfolgreich, aber das fenster mit der verschließten Präsentation wird nicht aktualisiert. Vorzugsweise sollte die Anwendung das Rendern im Präsentationsfenster mit dem Gerät beenden und CheckDeviceState weiterhin aufrufen, bis S_OK oder S_PRESENT_MODE_CHANGED zurückgegeben wird. Nur Direct3D 9Ex. |
|
Das Gerät unterstützt keine Überlagerung für die angegebene Größe oder den angegebenen Anzeigemodus. Direct3D 9Ex nur unter Windows 7. |
|
Das Gerät unterstützt keine Überlagerung für das angegebene Oberflächenformat. Direct3D 9Ex nur unter Windows 7. |
|
Der angegebene Inhalt kann nicht geschützt werden. Direct3D 9Ex nur unter Windows 7. |
|
Der angegebene kryptografische Algorithmus wird nicht unterstützt. Direct3D 9Ex nur unter Windows 7. |
|
Die vorliegenden Statistiken weisen keine geordnete Sequenz auf. Direct3D 9Ex nur unter Windows 7. |
Fehler werden durch negative Werte dargestellt und können nicht kombiniert werden.
Andere Rückgabecodes sind in S_PRESENT enthalten.
Der Einrichtungscode _FACD3D wird verwendet, um Fehlercodes zu generieren, wie in den folgenden Makros dargestellt.
// Direct3D Errors
#define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_D3DHRESULT(2079)
#define D3DERR_WASSTILLDRAWING MAKE_D3DHRESULT(540)
#define _FACD3D 0x876 // Direct3D facility code
#define MAKE_D3DHRESULT( code ) MAKE_HRESULT( 1, _FACD3D, code )
#define MAKE_D3DSTATUS( code ) MAKE_HRESULT( 0, _FACD3D, code )
Anforderung | Wert |
---|---|
Header |
|