D3DLOCK
Eine Kombination aus 0 oder mehr Sperroptionen, die den Typ der auszuführenden Sperre beschreiben.
#define | BESCHREIBUNG |
---|---|
D3DLOCK_DISCARD | Die Anwendung verwirft den gesamten Arbeitsspeicher innerhalb der gesperrten Region. Bei Vertex- und Indexpuffern wird der gesamte Puffer verworfen. Diese Option ist nur gültig, wenn die Ressource mit dynamischer Nutzung erstellt wird (siehe D3DUSAGE). |
D3DLOCK_DONOTWAIT | Ermöglicht es einer Anwendung, CPU-Zyklen zurückzugewinnen, wenn der Treiber die Oberfläche nicht sofort sperren kann. Wenn dieses Flag festgelegt ist und der Treiber die Oberfläche nicht sofort sperren kann, gibt der Sperraufruf D3DERR_WASSTILLDRAWING zurück. Dieses Flag kann nur verwendet werden, wenn eine Mit CreateOffscreenPlainSurface, CreateRenderTarget oder CreateDepthStencilSurface erstellte Oberfläche gesperrt wird. Dieses Flag kann auch mit einem Backpuffer verwendet werden. |
D3DLOCK_NO_DIRTY_UPDATE | Standardmäßig fügt eine Sperre für eine Ressource dieser Ressource eine modifiziert Region hinzu. Diese Option verhindert Änderungen am modifiziert Zustand der Ressource. Anwendungen sollten diese Option verwenden, wenn während des Sperrvorgangs zusätzliche Informationen zu den Regionen geändert wurden. |
D3DLOCK_NOOVERWRITE | Gibt an, dass arbeitsspeicher, auf den in einem Zeichnungsaufruf seit der letzten Sperre ohne dieses Flag verwiesen wurde, während der Sperre nicht geändert wird. Dadurch können Optimierungen aktiviert werden, wenn die Anwendung Daten an eine Ressource anhängt. Wenn Sie dieses Flag angeben, kann der Treiber sofort zurückgeben, wenn die Ressource verwendet wird. Andernfalls muss der Treiber die Verwendung der Ressource beenden, bevor er von der Sperrung zurückkehrt. |
D3DLOCK_NOSYSLOCK | Das Standardverhalten einer Videospeichersperre besteht darin, einen systemweiten kritischen Abschnitt zu reservieren, wodurch sichergestellt wird, dass für die Dauer der Sperre keine Änderungen im Anzeigemodus auftreten. Diese Option bewirkt, dass der systemweite kritische Abschnitt nicht für die Dauer der Sperre gehalten wird. Der Sperrvorgang ist zeitaufwändig, kann aber das System in die Lage versetzen, andere Aufgaben auszuführen, z. B. das Bewegen des Mauscursors. Diese Option ist nützlich für Sperren mit langer Dauer, z. B. die Sperre des Rückpuffers für das Softwarerendering, die sich andernfalls negativ auf die Reaktionsfähigkeit des Systems auswirken würde. |
D3DLOCK_READONLY | Die Anwendung schreibt nicht in den Puffer. Dadurch können Ressourcen, die in nicht nativen Formaten gespeichert sind, den Schritt zur Erneutkomprimierung beim Entsperren speichern. |
Konstante Informationen
Anforderung | Wert |
---|---|
Header | d3d9types.h |
Mindestbetriebssystem | Windows 98 |
Zugehörige Themen
-
LockVertexBuffer