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) de CACH. El controlador puede usar la macro MAKEFOURCC de la siguiente manera 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 tiras 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 real de la caché 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.
Comentarios
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 runtime especifica la marca D3DDEVINFOID_VCACHE en el miembro dwFlags de la estructura 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 miembro lpdwStates de DD_GETDRIVERSTATEDATA.
DirectX 9.0 y versiones posteriores solo. El entorno de ejecución de Direct3D especifica D3DDP2OP_CREATEQUERY y comandos D3DDP2OP_ISSUEQUERY en llamadas a la devolución de llamada D3dDrawPrimitives2 del controlador 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 runtime 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 completarse 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 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 |
---|---|
Header | d3d9types.h (include D3d9types.h) |
Consulte también
D3DDP2OP_CREATEQUERY
D3DDP2OP_ISSUEQUERY