diff options
author | Eric Anholt <[email protected]> | 2012-08-23 11:35:32 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2012-08-26 10:40:33 -0700 |
commit | 7540f25a345ed8d35d97ba4fbf66227a281eff6a (patch) | |
tree | ee401684a902d4bbb4eb26b191b75b0840f06e97 /src/mesa/drivers | |
parent | f0159018d7709b57d9916575512d75cb3f2fb395 (diff) |
i965: Rewrite the comment describing the query object support.
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_queryobj.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_queryobj.c b/src/mesa/drivers/dri/i965/brw_queryobj.c index 87c8dac254b..d5c4fdf2725 100644 --- a/src/mesa/drivers/dri/i965/brw_queryobj.c +++ b/src/mesa/drivers/dri/i965/brw_queryobj.c @@ -25,18 +25,20 @@ * */ -/** @file support for ARB_query_object +/** @file brw_queryobj.c * - * ARB_query_object is implemented by using the PIPE_CONTROL command to stall - * execution on the completion of previous depth tests, and write the - * current PS_DEPTH_COUNT to a buffer object. + * Support for query objects (GL_ARB_occlusion_query, GL_ARB_timer_query, + * GL_EXT_transform_feedback, and friends). * - * We use before and after counts when drawing during a query so that - * we don't pick up other clients' query data in ours. To reduce overhead, - * a single BO is used to record the query data for all active queries at - * once. This also gives us a simple bound on how much batchbuffer space is - * required for handling queries, so that we can be sure that we won't - * have to emit a batchbuffer without getting the ending PS_DEPTH_COUNT. + * The hardware provides a PIPE_CONTROL command that can report the number of + * fragments that passed the depth test, or the hardware timer. They are + * appropriately synced with the stage of the pipeline for our extensions' + * needs. + * + * To avoid getting samples from another context's rendering in our results, + * we capture the counts at the start and end of every batchbuffer while the + * query is active, and sum up the differences. (We should do so for + * GL_TIME_ELAPSED as well, but don't). */ #include "main/imports.h" |