D3DDDIDEVINFO_VCACHE構造体 (d3dumddi.h)
D3DDDIDEVINFO_VCACHE構造体は、デバイスの頂点キャッシュ情報を記述します。
構文
typedef struct _D3DDDIDEVINFO_VCACHE {
[out] UINT Pattern;
[out] UINT OptMethod;
[out] UINT CacheSize;
[out] UINT MagicNumber;
} D3DDDIDEVINFO_VCACHE;
メンバーズ
[out] Pattern
ビット パターン。 ドライバーは、CACH 4 文字コード (FOURCC) 値としてビット パターンを指定する必要があります。 ドライバーは、次の MAKEFOURCC マクロを使用して、FOURCC 値を CACH として指定できます。
MAKEFOURCC('C', 'A', 'C', 'H');
[out] OptMethod
メッシュ最適化の方法。 ドライバーは、次のいずれかの値を使用して、使用するメッシュの最適化を指定できます。
値の | 意味 |
---|---|
D3DXMESHOPT_STRIPREORDER (0) | 最長ストリップの最適化 |
D3DXMESHOPT_VCACHE (1) | 頂点キャッシュ ベースの最適化 |
[out] CacheSize
ドライバーが頂点キャッシュを最適化する有効なサイズ (エントリ単位)。 ほとんどの状況では実際のキャッシュ サイズが大きいため、実際のキャッシュ サイズは CacheSize で指定されているサイズである必要はありません。 ドライバーは、OptMethod メンバーのD3DXMESHOPT_VCACHEも指定する場合にのみ、CacheSize で最適化されたサイズを指定します。
[out] MagicNumber
ストリップ リストを再起動するタイミングを決定するときに、試用版とエラーの手順の一部として使用する必要がある番号。 この数値は、1 から CacheSize メンバーで指定された値まで指定できます。 通常、最適な値は CacheSize/2 の近くです。 ドライバーは、OptMethod メンバーのD3DXMESHOPT_VCACHEも指定する場合にのみ、MagicNumber で数値を指定します。
備考
Direct3D ランタイム バージョン 9.0 以降。 Microsoft Direct3D ランタイムは、ドライバーの CreateQuery 関数を呼び出して、頂点キャッシュ クエリのドライバー側リソースを作成します。 この CreateQuery 呼び出しでは、ランタイムは、D3DDDIARG_CREATEQUERY 構造体の QueryType メンバーにD3DDDIQUERYTYPE_VCACHEクエリの種類を指定します。 ドライバーは、D3DDDIDEVINFO_VCACHE構造体を割り当てる必要があります。 ランタイムは、ドライバーの IssueQuery 関数を呼び出して、頂点キャッシュ クエリを処理します。 ドライバーは、頂点キャッシュ データを割り当てに書き込むためのグラフィックス処理装置 (GPU) 命令を挿入する必要があります。 ドライバーから頂点キャッシュ情報を取得するために、ランタイムはドライバーの GetQueryData 関数を呼び出します。 この GetQueryData 呼び出しでは、ドライバーは割り当てをロックし、pData パラメーターによって指される D3DDDIARG_GETQUERYDATA 構造体の pData メンバーで頂点キャッシュ データを返す必要があります。
Direct3D ランタイム バージョン 8.1 のみ。 Direct3D ランタイムは、ドライバーの GetInfo 関数を呼び出して、ドライバーから頂点キャッシュ情報を取得します。 この GetInfo 呼び出しでは、ランタイムは DevInfoID パラメーターに D3DDDIDEVINFOID_VCACHE フラグを渡します。 ドライバーは、D3DDDIDEVINFO_VCACHE構造体内の頂点キャッシュ情報を指定し、pDevInfoStruct パラメーターでそれを返します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
ヘッダー | d3dumddi.h (D3dumddi.h を含む) |
関連項目
CreateQuery の
GetInfo を する
GetQueryData の