enumerazione D3D10_QUERY (d3d10.h)
Tipi di query.
Sintassi
typedef enum D3D10_QUERY {
D3D10_QUERY_EVENT = 0,
D3D10_QUERY_OCCLUSION,
D3D10_QUERY_TIMESTAMP,
D3D10_QUERY_TIMESTAMP_DISJOINT,
D3D10_QUERY_PIPELINE_STATISTICS,
D3D10_QUERY_OCCLUSION_PREDICATE,
D3D10_QUERY_SO_STATISTICS,
D3D10_QUERY_SO_OVERFLOW_PREDICATE
} ;
Costanti
D3D10_QUERY_EVENT Valore: 0 Determina se la GPU è stata completata o meno con i comandi di elaborazione. Al termine dell'elaborazione della GPU, i comandi GetData restituiranno S_OK e pData punterà a un valore BOOL con valore TRUE. Quando si usa questo tipo di query, Begin è disabilitato. |
D3D10_QUERY_OCCLUSION Ottenere il numero di campioni che hanno superato i test di profondità e stencil tra Begin e End. GetData restituisce un oggetto UINT64. Se un test depth o stencil è disabilitato, ognuno di questi test verrà conteggiato come superamento. |
D3D10_QUERY_TIMESTAMP Ottiene un valore timestamp in cui GetData restituisce un valore UINT64. Questo tipo di query è utile solo se due query timestamp vengono eseguite al centro di una query D3D10_QUERY_TIMESTAMP_DISJOINT. La differenza di due timestamp può essere usata per determinare il numero di tick trascorsi e la query D3D10_QUERY_TIMESTAMP_DISJOINT determinerà se tale differenza è un valore affidabile e ha anche un valore che mostra come convertire il numero di tick in secondi. Vedere D3D10_QUERY_DATA_TIMESTAMP_DISJOINT. Quando si usa questo tipo di query, Begin è disabilitato. |
D3D10_QUERY_TIMESTAMP_DISJOINT Determina se un D3D10_QUERY_TIMESTAMP restituisce valori affidabili e fornisce anche la frequenza del processore che consente di convertire il numero di tick trascorsi in secondi. GetData restituirà un D3D10_QUERY_DATA_TIMESTAMP_DISJOINT. Questo tipo di query deve essere richiamato solo una volta per fotogramma o meno. |
D3D10_QUERY_PIPELINE_STATISTICS Ottenere le statistiche della pipeline, ad esempio il numero di chiamate del pixel shader tra Begin e End. GetData restituirà un D3D10_QUERY_DATA_PIPELINE_STATISTICS. |
D3D10_QUERY_OCCLUSION_PREDICATE Analogamente a D3D10_QUERY_OCCLUSION, ad eccezione di GetData restituisce un valore BOOL che indica se i campioni hanno superato o meno i test di profondità e stencil: TRUE indica almeno un valore superato, FALSE che indica che non è stato superato alcun campione. |
D3D10_QUERY_SO_STATISTICS Ottenere le statistiche di output di streaming, ad esempio il numero di primitive trasmessi tra Begin e End. GetData restituirà una struttura di D3D10_QUERY_DATA_SO_STATISTICS . |
D3D10_QUERY_SO_OVERFLOW_PREDICATE Determina se uno o più buffer di output di streaming superano l'intervallo tra Begin e End. GetData restituisce un valore BOOL- TRUE che indica che si è verificato un overflow, FALSE significa che non c'è stato un overflow. Se l'output di streaming scrive in più buffer e uno dei buffer esegue l'overflow, interromperà la scrittura in tutti i buffer di output. Quando viene rilevato un overflow da Direct3D, non si verifica alcun problema di memoria. Questa predicazione può essere usata in combinazione con una query SO_STATISTICS in modo che quando si verifica un overflow la query SO_STATISTIC in modo che l'applicazione sappia la quantità di memoria necessaria per evitare un overflow. |
Requisiti
Requisito | Valore |
---|---|
Intestazione | d3d10.h |