Let us consider my worst case. For whatever reason, a user might have 
10,000 images all on the screen at once. I am worried that, if I draw all 
of them in a batch, that this will still cause unacceptable lag. Only a 
handful of images ever needs to be redrawn every second, so I would like to 
keep all of the other images drawn, without having to redraw them unless 
they need updating. I really have no use whatever for window.clear(), 
except that when I don't use it, there appear to be two alternating buffers 
that get drawn to, rather than one.

Claudio suggested this solution:

> "A possible way to sort it out can be:
    . have a Framebuffer Object (FBO) as taget for your draws,
      when you receive an on_draw blit the fbo over the screen"

However, I was unable to find a resource on how to do this.

On Tuesday, April 21, 2015 at 10:02:26 PM UTC-4, magu...@gmail.com wrote:
>
> I agree with Adam, you should try using Batch Rendering.
>
> The reason you may be getting such crushing frame rates is because each 
> blit call is process intensive, blitting a few images won't do much, but 
> when you get into dozens, hundreds, or thousands of blit calls it quickly 
> adds up. With batch rendering, you group together all the images you want 
> to draw into a single tileset or image Atlus, and then draw everything in a 
> *single* call, instead of several individual calls.
>
> While it may not be entirely similar to your situation, in my earlier 
> projects i've gone from 300 tiles running at 10fps, to 1500 tiles running 
> at 60fps when making the switch to batch rendering.
>

-- 
You received this message because you are subscribed to the Google Groups 
"pyglet-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to pyglet-users+unsubscr...@googlegroups.com.
To post to this group, send email to pyglet-users@googlegroups.com.
Visit this group at http://groups.google.com/group/pyglet-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to