Maciej Cencora wrote:
> Hi,
> 
> here's a an excerpt from ARB_occlusion_query specification:
> 
>     Will polling a query without a Flush possibly cause an infinite loop?
> 
>         RESOLVED: No.  An infinite loop was possible in the original 
>         NV_occlusion_query spec if an application did not perform a 
>         flush prior to polling.  This behavior was removed in this version
>         of the spec as it violated language in the core GL spec.  
> 
>         Instead of allowing for an infinite loop, performing a 
>         QUERY_RESULT_AVAILABLE_ARB will perform a flush if the result
>         is not ready yet on the first time it is queried.  This ensures
>         that the async query will return true in finite time.
>         
>         This behavior is not a significant performance loss over the original
>         version of the spec.  A flush would need to be performed at some
>         point anyway and the flush performed when QUERY_RESULT_AVAILABLE_ARB
>         is requested will only occur *if the result is not back yet*.
> 
> and another one from glBeginQuery documentation:
> 
> Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the     
> rendering delimited by the query object has completed and the result is 
> available.  
> 
> In mesa there seems to be no code that would flush the pipe in these 
> situations. Is this intentional behavior to allow per driver optimizations or 
> just a bug?

The intention is that the ctx->Driver.WaitQuery() and 
ctx->Driver.CheckQuery() functions would issue flushes if needed.

I just noticed there's no default/fallback function for the 
CheckQuery() hook so I'll add that...

-Brian


------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to