I'm getting the issue as well. It's being caused because clocks are
imperfect.
This is not something that can be easily fixed in pyglet, but can be
avoided by restructuring your code to have only a single scheduled function:
import pyglet
window = pyglet.window.Window(800,600, vsync=False)
fps_display = pyglet.clock.ClockDisplay(color=(1,0,0,0.5))
batch = pyglet.graphics.Batch()
tileImg = pyglet.image.load("image.png")
playerImg = pyglet.image.load("image2.png")
group = pyglet.graphics.Group()
sprites = []
for i in range(50):
for j in range(50):
sprites.append(pyglet.sprite.Sprite(tileImg, x=i*32, y=j*32, batch=
batch))
playerSprite = pyglet.sprite.Sprite(playerImg, x=50, y=50, batch=batch)
x_speed = 0
y_speed = 0
@window.event
def on_draw():
window.clear()
batch.draw()
def moveChar(dt):
playerSprite.x += x_speed
playerSprite.y += y_speed
pyglet.clock.schedule_interval(moveChar, 1/60.0)
@window.event
def on_key_press(symbol,modifiers):
global x_speed
global y_speed
if symbol == pyglet.window.key.LEFT:
x_speed -= 1
elif symbol == pyglet.window.key.RIGHT:
x_speed += 1
elif symbol == pyglet.window.key.UP:
y_speed += 1
elif symbol == pyglet.window.key.DOWN:
y_speed -= 1
pyglet.app.run()
--
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/pyglet-users.
For more options, visit https://groups.google.com/d/optout.