On Aug 30, 2:21 am, "Alex Holkner" <[EMAIL PROTECTED]> wrote:
> On 8/30/08, Andrius Mitkus <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
> >  Clock reports wrong fps when EventLoop.idle() is overridden
>
> >  Hello,
>
> >  I tried fixing my frame rate by overriding EventLoop.idle() method and
> >  dispatching on_draw only in scheduled actions, however ClockDisplay is
> >  now showing nonsense. It behaves as if every clock.tick() is followed
> >  by on_draw event, but this isn't true anymore, so displayed fps is
> >  higher than real fps. This program reproduces bug (if it's not a
> >  feature):
>
> >  #!/usr/bin/python
> >  import pyglet
>
> >  window = pyglet.window.Window(vsync = False)
> >  event_loop = pyglet.app.EventLoop()
> >  fps_display = pyglet.clock.ClockDisplay()
>
> > [EMAIL PROTECTED]
> >  def on_draw():
> >     window.clear()
> >     fps_display.draw()
>
> >  def update(dt):
> >     if not window.has_exit:
> >         window.dispatch_event('on_draw')
> >         window.flip()
>
> >  def idle():
> >     pyglet.clock.tick(True)
> >     return pyglet.clock.get_sleep_time(True)
>
> >  pyglet.clock.schedule_interval(update, 1.0 / 30.0)
> >  event_loop.idle = idle
> >  event_loop.run()
>
> >  It looks like problem is in clock.tick() method, it pushes new delta
> >  time into sliding window every time it's called. I haven't tested SVN
> >  version, but after quick look into repository I was unable to spot any
> >  significant changes in there. Am I doing something wrong, or is it
> >  really a bug?
>
> This is indeed a "feature".  The clock FPS measurement is just
> convenience, and does assume that the window is redrawn every "tick".
> If it were to actually reflect what goes on with on_draw, it would
> have to be per-window anyway.
>
> I have no great desire to change this, although if you think there's
> documentation that needs clarifying I'd be happy to consider that.
>
> Alex.

Thanks for help. There should definitely be more information about
this in documentation.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pyglet-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/pyglet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to