estrutura D3DDEVINFO_VCACHE (d3d9types.h)
Somente o DirectX 8.1 e versões posteriores.
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 CACH (FOURCC). 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 faixas 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 no CacheSize porque, na maioria dos casos, o tamanho real do cache acaba sendo maior. O driver especificará apenas um tamanho otimizado no CacheSize se ele também especificar D3DXMESHOPT_VCACHE no membro OptMethod .
MagicNumber
Especifica o número que deve ser usado como parte de um procedimento de tentativa e erro ao determinar quando reiniciar a lista de faixas. Esse número pode ser definido de 1 para o valor no membro CacheSize . Normalmente, os melhores valores estão próximos de CacheSize/2.
Comentários
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. Nesta 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 D3DDEVINFO_VCACHE e as retorna no membro lpdwStates do DD_GETDRIVERSTATEDATA.
Somente o DirectX 9.0 e versões posteriores. O runtime do Direct3D especifica comandos D3DDP2OP_CREATEQUERY e D3DDP2OP_ISSUEQUERY em chamadas para o retorno de chamada D3dDrawPrimitives2 do driver para criar recursos do lado do driver para a consulta e, em seguida, consultar de forma assíncrona 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 membro ddrval de D3DHAL_DRAWPRIMITIVES2DATA como 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 D3DDEVINFO_VCACHE.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | d3d9types.h (inclua D3d9types.h) |
Confira também
D3DDP2OP_CREATEQUERY
D3DDP2OP_ISSUEQUERY