![]() ![]() ![]() ![]() |
|
![]() |
|
![]() |
D3DUSAGE_RENDERTARGET = &00000001; D3DUSAGE_DEPTHSTENCIL = &00000002; // für Vertex- und Indexbuffer D3DUSAGE_WRITEONLY = &00000008; D3DUSAGE_SOFTWAREPROCESSING = &00000010; D3DUSAGE_DONOTCLIP = &00000020; D3DUSAGE_POINTS = &00000040; D3DUSAGE_RTPATCHES = &00000080; D3DUSAGE_NPATCHES = &00000100; D3DUSAGE_DYNAMIC = &00000200; |
D3DUSAGE_RENDERTARGET
Gibt an, dass das erstellte Surface als Renderziel verwendet werden soll.
D3DUSAGE_DEPTHSTENCIL
Gibt an, dass das erstellte Surface als Tiefenbuffer verwendet werden soll.
D3DUSAGE_WRITEONLY
Der Buffer wird nur zum beschreiben und rendern verwendet, nicht aber, um Daten aus dem Buffer auszulesen. Diese Einsellung erlaubt es dem Treiber, den besten Speicherort für schnelles Schreiben und Rendern zu wählen. Das Lesen des Vertexbuffers mit dieser Einstellung schlägt fehl.
D3DUSAGE_SOFTWAREPROCESSING
Wenn Ihr Device mit HARDWAREPROCESSING arbeitet, also die Darstellung der Vertices hardwarebeschleunigt, dann können Sie mit dieser Konstante die Hardwarebeschleunigung für den gewählten Buffer ausschalten.
D3DUSAGE_DONOTCLIP
Stellt fest, dass der Inhalt des Buffer niemals Clipping benötigt. Beachten Sie, dass vor dem Rendern Clipping in den Renderstates auf False gestellt werden muss.
D3DUSAGE_POINTS
Der Buffer wird nur zum Darstellen von Punkten verwendet.
D3DUSAGE_RTPATCHES
Gibt an, dass der Buffer für Bezierkurven verwendet wird. Diese Konstante spielt eine Rolle, wenn aus einem Mesh der Vertexbuffer gelesen wird.
D3DUSAGE_NPATCHES
Gibt an, dass die Koordinaten angeben, in welche Richtung die Bezierkurve ausgerichtet werden soll.
D3DUSAGE_DYNAMIC
Die Grösse des Speichers ist dynamisch. Des weiteren entscheidet der Grafikkartentreiber, in welchem Speicher die Vertexdaten abgelegt werden sollen. Generell kann man sagen, statische Vertexbuffer werden im Videospeicher abgelegt und dynamische Vertexbuffer im AGP Speicher. Der Vertexbuffer ist automatisch statisch, wenn Sie dieses Flag nicht angeben. Die Verwendung dieses Flags erzwingt, dass der Vertexbuffer mit den Flags D3DLOCK_DISCARD und D3DLOCK_NOOVERWRITE gelockt wird. Andersherum gilt die selbe Beziehung. D3DLOCK_DISCARD und D3DLOCK_NOOVERWRITE sind nur verfügbar, wenn D3DUSAGE_DYNAMIC angegeben ist.