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.
Nur DirectX 8.1 und höhere Versionen.
Die D3DDEVINFO_VCACHE-Struktur beschreibt Vertexcacheinformationen eines Geräts.
Syntax
typedef struct _D3DDEVINFO_VCACHE {
DWORD Pattern;
DWORD OptMethod;
DWORD CacheSize;
DWORD MagicNumber;
} D3DDEVINFO_VCACHE, *LPD3DDEVINFO_VCACHE;
Angehörige
Pattern
Gibt das Bitmuster an. Der Treiber muss das Bitmuster als vierstelligen CACH-Codewert (FOURCC) angeben. Der Treiber kann das MAKEFOURCC-Makro wie folgt verwenden, um den FOURCC-Wert als CACH anzugeben:
MAKEFOURCC('C', 'A', 'C', 'H');
OptMethod
Gibt die Methode der Gitteroptimierung an. Der Treiber kann einen der folgenden Werte verwenden, um die verwendete Gitteroptimierung anzugeben:
| Wert | Bedeutung |
|---|---|
| D3DXMESHOPT_STRIPREORDER (0) | Optimierung der längsten Streifen |
| D3DXMESHOPT_VCACHE (1) | Vertexcachebasierte Optimierung |
CacheSize
Gibt die effektive Größe in Einträgen an, für die der Treiber den Vertexcache optimiert. Die tatsächliche Cachegröße ist nicht erforderlich, um die in CacheSize- angegebene Größe zu sein, da sich in den meisten Fällen die tatsächliche Cachegröße als größer herausstellt. Der Treiber gibt nur eine optimierte Größe in CacheSize- an, wenn er auch D3DXMESHOPT_VCACHE im OptMethod Member angibt.
MagicNumber
Gibt die Zahl an, die als Teil einer Test- und Fehlerprozedur verwendet werden soll, wenn ermittelt wird, wann die Stripsliste neu gestartet werden soll. Diese Zahl kann von 1 auf den Wert im CacheSize Member festgelegt werden. In der Regel sind die besten Werte in der Nähe CacheSize/2.
Bemerkungen
Nur DirectX 8.1-Versionen. Die Direct3D-Laufzeit ruft die D3dGetDriverState-Funktion eines Treibers auf, um Vertexcacheinformationen vom Treiber abzurufen. In diesem D3dGetDriverState Aufruf gibt die Laufzeit das D3DDEVINFOID_VCACHE Flag im dwFlags Member der DD_GETDRIVERSTATEDATA Struktur an, die die Laufzeit übergibt. Der Treiber gibt Vertexcacheinformationen in einer D3DDEVINFO_VCACHE-Struktur an und gibt sie an der lpdwStates Member von DD_GETDRIVERSTATEDATA zurück.
Nur DirectX 9.0 und höhere Versionen. Die Direct3D-Laufzeit gibt D3DDP2OP_CREATEQUERY und D3DDP2OP_ISSUEQUERY Befehle in Aufrufen der D3dDrawPrimitives2 Rückruf an, um treiberseitige Ressourcen für die Abfrage zu erstellen und dann den Treiber asynchron nach Vertexcacheinformationen abzufragen. Im Aufruf mit dem Befehl D3DDP2OP_CREATEQUERY gibt die Laufzeit den D3DQUERYTYPE_VCACHE Abfragetyp im QueryType Member der D3DHAL_DP2CREATEQUERY Struktur an.
Wenn der Treiber eine Vertexcacheabfrage abgeschlossen hat, legt der Treiber die Gesamtgröße des Antwortpuffers im dwErrorOffset-Element der D3DHAL_DRAWPRIMITIVES2DATA Struktur fest und legt das ddrval Member von D3DHAL_DRAWPRIMITIVES2DATA auf D3D_OK für den erfolgreichen Abschluss fest. Der Treiber überschreibt auch den eingehenden Befehlspuffer mit dem ausgehenden Antwortpuffer. Dieser Antwortpuffer enthält eine D3DHAL_DP2RESPONSEQUERY Struktur, die eine Antwort für die Vertexcacheabfrage identifiziert. Auf diese D3DHAL_DP2RESPONSEQUERY folgen die Vertexcachedaten in der D3DDEVINFO_VCACHE-Struktur.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | d3d9types.h (include D3d9types.h) |
Siehe auch
D3DDP2OP_CREATEQUERY
D3DDP2OP_ISSUEQUERY