estrutura D3DDEVINFO_VCACHE (d3d9types.h)
Somente versões posteriores e DirectX 8.1.
A estrutura D3DDEVINFO_VCACHE descreve informações de cache de vértice de um dispositivo.
Sintaxe
typedef struct _D3DDEVINFO_VCACHE {
DWORD Pattern;
DWORD OptMethod;
DWORD CacheSize;
DWORD MagicNumber;
} D3DDEVINFO_VCACHE, *LPD3DDEVINFO_VCACHE;
Membros
Pattern
Especifica o padrão de bit. O driver deve especificar o padrão de bit como o valor do código de quatro caracteres (FOURCC) da CACH. O driver pode usar a macro MAKEFOURCC da seguinte maneira para especificar o valor FOURCC como CACH:
MAKEFOURCC('C', 'A', 'C', 'H');
OptMethod
Especifica o método de otimização de malha. O driver pode usar um dos seguintes valores para especificar a otimização de malha que ele usa:
Valor | Significado |
---|---|
D3DXMESHOPT_STRIPREORDER (0) | Otimização de tiras mais longas |
D3DXMESHOPT_VCACHE (1) | Otimização baseada em cache de vértice |
CacheSize
Especifica o tamanho efetivo, em entradas, para o qual o driver otimiza o cache de vértice. O tamanho real do cache não é necessário para ser o tamanho especificado em cacheSize porque, na maioria dos casos, o tamanho real do cache acaba sendo maior. O driver especifica apenas um tamanho otimizado em cacheSize se ele também especifica D3DXMESHOPT_VCACHE no membro optMethod.
MagicNumber
Especifica o número que deve ser usado como parte de um procedimento de avaliação e erro ao determinar quando reiniciar a lista de tiras. Esse número pode ser definido de 1 para o valor no membro do cacheSize. Normalmente, os melhores valores são próximos CacheSize/2.
Observações
Somente versões do DirectX 8.1. O runtime do Direct3D chama a função D3dGetDriverState de um driver para obter informações de cache de vértice do driver. Neste chamada D3dGetDriverState, o runtime especifica o sinalizador D3DDEVINFOID_VCACHE no membro dwFlags da estrutura DD_GETDRIVERSTATEDATA que o runtime passa. O driver especifica informações de cache de vértice em uma estrutura de D3DDEVINFO_VCACHE e as retorna no lpdwStates membro do DD_GETDRIVERSTATEDATA.
Somente versões posteriores e DirectX 9.0. O runtime do Direct3D especifica comandos D3DDP2OP_CREATEQUERY e D3DDP2OP_ISSUEQUERY em chamadas para o D3dDrawPrimitives2 do driver2 retorno de chamada para criar recursos do lado do driver para a consulta e, em seguida, consultar assíncronamente o driver para obter informações de cache de vértice. Na chamada com o comando D3DDP2OP_CREATEQUERY, o runtime especifica o tipo de consulta D3DQUERYTYPE_VCACHE no membro queryType da estrutura D3DHAL_DP2CREATEQUERY.
Quando o driver conclui uma consulta de cache de vértice, o driver define o tamanho total do buffer de resposta no membro dwErrorOffset da estrutura D3DHAL_DRAWPRIMITIVES2DATA e define o ddrval membro do D3DHAL_DRAWPRIMITIVES2DATA para D3D_OK para conclusão bem-sucedida. O driver também substitui o buffer de comando de entrada com o buffer de resposta de saída. Esse buffer de resposta contém uma estrutura D3DHAL_DP2RESPONSEQUERY que identifica uma resposta para a consulta de cache de vértice. Esse D3DHAL_DP2RESPONSEQUERY é seguido pelos dados de cache de vértice na estrutura de D3DDEVINFO_VCACHE.
Requisitos
Requisito | Valor |
---|---|
cabeçalho | d3d9types.h (inclua D3d9types.h) |
Consulte também
D3DDP2OP_CREATEQUERY
D3DDP2OP_ISSUEQUERY