mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 02:28:10 +02:00
st/nine: Fix D3DQUERYTYPE_TIMESTAMPFREQ query
D3DQUERYTYPE_TIMESTAMPFREQ is supposed to give the frequency at which the clock of D3DQUERYTYPE_TIMESTAMP runs. PIPE_QUERY_TIMESTAMP returns a value in ns, thus the corresponding frequency is 1000000000. PIPE_QUERY_TIMESTAMP_DISJOINT returns the frequency at which PIPE_QUERY_TIMESTAMP value is updated. It isn't always 1000000000. Reviewed-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Xavier Bouchoux <xavierb@gmail.com>
This commit is contained in:
parent
31bb4cd5c6
commit
851abb9145
1 changed files with 9 additions and 1 deletions
|
|
@ -254,7 +254,15 @@ NineQuery9_GetData( struct NineQuery9 *This,
|
|||
nresult.b = presult.timestamp_disjoint.disjoint;
|
||||
break;
|
||||
case D3DQUERYTYPE_TIMESTAMPFREQ:
|
||||
nresult.u64 = presult.timestamp_disjoint.frequency;
|
||||
/* Applications use it to convert the TIMESTAMP value to time.
|
||||
AMD drivers on win seem to return the actual hardware clock
|
||||
resolution and corresponding values in TIMESTAMP.
|
||||
However, this behaviour is not easy to replicate here.
|
||||
So instead we do what wine and opengl do, and use
|
||||
nanoseconds TIMESTAMPs.
|
||||
(Which is also the unit used by PIPE_QUERY_TIMESTAMP.)
|
||||
*/
|
||||
nresult.u64 = 1000000000;
|
||||
break;
|
||||
case D3DQUERYTYPE_VERTEXSTATS:
|
||||
nresult.vertexstats.NumRenderedTriangles =
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue