Compartir a través de


estructura D3DDEVINFO_VCACHE (d3d9types.h)

DirectX 8.1 y versiones posteriores solo.

La estructura D3DDEVINFO_VCACHE describe la información de caché de vértices de un dispositivo.

Sintaxis

typedef struct _D3DDEVINFO_VCACHE {
  DWORD Pattern;
  DWORD OptMethod;
  DWORD CacheSize;
  DWORD MagicNumber;
} D3DDEVINFO_VCACHE, *LPD3DDEVINFO_VCACHE;

Miembros

Pattern

Especifica el patrón de bits. El controlador debe especificar el patrón de bits como el valor de código de cuatro caracteres (FOURCC) CACH. El controlador puede usar la macro MAKEFOURCC como se indica a continuación para especificar el valor FOURCC como CACH:

MAKEFOURCC('C', 'A', 'C', 'H');

OptMethod

Especifica el método de optimización de malla. El controlador puede usar uno de los siguientes valores para especificar la optimización de malla que usa:

Valor Significado
D3DXMESHOPT_STRIPREORDER (0) Optimización de franjas más largas
D3DXMESHOPT_VCACHE (1) Optimización basada en caché de vértices

CacheSize

Especifica el tamaño efectivo, en entradas, para las que el controlador optimiza la caché de vértices. No es necesario que el tamaño de caché real sea el tamaño especificado en CacheSize porque, en la mayoría de los casos, el tamaño de caché real resulta ser mayor. El controlador solo especifica un tamaño optimizado en CacheSize si también especifica D3DXMESHOPT_VCACHE en el miembro OptMethod.

MagicNumber

Especifica el número que se debe usar como parte de un procedimiento de prueba y error al determinar cuándo reiniciar la lista de tiras. Este número se puede establecer de 1 al valor del miembro CacheSize. Normalmente, los mejores valores están cerca de CacheSize/2.

Observaciones

Solo versiones de DirectX 8.1. El tiempo de ejecución de Direct3D llama a la función D3dGetDriverState de un controlador para obtener información de caché de vértices del controlador. En esta llamada D3dGetDriverState, el tiempo de ejecución especifica la marca D3DDEVINFOID_VCACHE en el dwFlags miembro de la estructura de DD_GETDRIVERSTATEDATA que pasa el tiempo de ejecución. El controlador especifica información de caché de vértices en una estructura de D3DDEVINFO_VCACHE y la devuelve en el lpdwStates miembro de DD_GETDRIVERSTATEDATA.

DirectX 9.0 y versiones posteriores solo. El tiempo de ejecución de Direct3D especifica D3DDP2OP_CREATEQUERY y comandos D3DDP2OP_ISSUEQUERY en llamadas a la D3dDrawPrimitives2 del controlador devolución de llamada para crear recursos del lado controlador para la consulta y, a continuación, consultar de forma asincrónica el controlador para obtener información de caché de vértices. En la llamada con el comando D3DDP2OP_CREATEQUERY, el entorno de ejecución especifica el tipo de consulta D3DQUERYTYPE_VCACHE en el miembro QueryType de la estructura D3DHAL_DP2CREATEQUERY.

Cuando el controlador completa una consulta de caché de vértices, el controlador establece el tamaño total del búfer de respuesta en el miembro dwErrorOffset de la estructura D3DHAL_DRAWPRIMITIVES2DATA y establece el miembro ddrval de D3DHAL_DRAWPRIMITIVES2DATA en D3D_OK para que se complete correctamente. El controlador también sobrescribe el búfer de comandos entrante con el búfer de respuesta saliente. Este búfer de respuesta contiene una estructura de D3DHAL_DP2RESPONSEQUERY que identifica una respuesta para la consulta de caché de vértices. Este D3DHAL_DP2RESPONSEQUERY va seguido de los datos de caché de vértices en la estructura D3DDEVINFO_VCACHE.

Requisitos

Requisito Valor
encabezado de d3d9types.h (include D3d9types.h)

Consulte también

D3DDP2OP_CREATEQUERY

D3DDP2OP_ISSUEQUERY

D3DHAL_DP2CREATEQUERY

D3DHAL_DP2RESPONSEQUERY

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2

D3dGetDriverState de