次の方法で共有


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

D3DDDIARG_CREATEQUERY

D3DDDIARG_GETQUERYDATA

GetInfo する

GetQueryData

IssueQuery