pyglet.clock.tick无法正常工作

时间:2017-06-08 06:51:13

标签: python pyglet

我正在使用 pyglet ,我发现pyglet.clock.tick()返回的内容很奇怪。

pyglet.clock.tick()无法正常工作,返回值与已用时间不同。

  • 更新间隔为1/60=0.0625
  • 输出值应为:0.0625

main.py:

import pyglet

window = pyglet.window.Window()

def update(*args):
    pass

@window.event
def on_draw():
    dt = pyglet.clock.tick()
    print(dt)

    # rendering

pyglet.clock.schedule_interval(update, 1.0 / 60.0)
pyglet.app.run()

输出:

0.00023519893125589775
0.00023904764104010212
0.0006876361481085169
0.00020056054319805838
0.00024161344756334913
0.00023306075915385804
0.00038358807515770366
0.00021253430697143472
0.00021167903813035238
0.00019927763993665693
0.00024204108198366825

1 个答案:

答案 0 :(得分:2)

你每帧使用两次时钟。

update传递给pyglet.clock.tick()函数。如果您使用pyglet.clock.schedule_interval请勿调用更新中的schedule_interval,它将返回自上次0s 1/60s 2/60s 3/60s |-----------------------|-------|---------------|-------|---------------| <your dt> <your dt> 以来经过的时间。

这是您当前时间测量的工作原理:

import pyglet

window = pyglet.window.Window()

def update(dt):
    print(dt)

    # rendering

pyglet.clock.schedule_interval(update, 1.0 / 60.0)
pyglet.app.run()

代码应为:

  $familymembers=Membersfamilydetails::Where('member_id',$id)->select('id')->get();

    foreach($familymembers as $famil){

    $faids[]=$famil->id;

    }

$familyeducationDatas=Familyeducation::whereIn('familymemberid', $faids)->orderBy('id','DESC')->first();