[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] For review: ANGLE_timer_query extension






On Wed, Apr 3, 2013 at 2:21 PM, Florian Bösch <pyalot@gmail.com> wrote:
On Wed, Apr 3, 2013 at 11:15 PM, Kenneth Russell <kbr@google.com> wrote:
I think the most reliable way to adjust level of detail dynamically
would be to make adjustments based on the application's overall frame
rate over time, rather than measuring the GPU-side execution time of
individual draw calls. What do you think?
Measuring at the frame rate level is insufficient for two reasons:

  1. Framerate is capped at 60fps, you will want to kick in LOD before you start dropping frames.
The current proposal of caching results to prevent both spin waiting and inconsistent behavior would prevent you from figuring this stuff out in the same frame. Even if we didn't add those restrictions there's no guarantee the query will be available in time to use the info in the same frame.

 
  1. Not every aspect of a rendering consumes the same time relative on every platform. For instance you might render a bunch of clouds as point sprites (overdraw bound) and terrain (vertex troughput bound). Some platforms might have better fillrate than vertex troughput, others might have better vertex troughput than fillrate for any given application. How do you know if you want to render less clouds or less terrain?
Render them separately for the purpose of timing.