Je teste pyglet lib. La première chose que je l'ai fait est de dessiner une image d'arrière-plan et un simple écrit, voici le code:Pyglet: dessiner un lot
game_window = pyglet.window.Window(720, 1280, fullscreen=True)
game_window.set_exclusive_mouse()
background_day = pyglet.sprite.Sprite(img=resources.background_day_image, x=0, y=0)
fps_label = pyglet.text.Label(text="fps: 0", x=100, y=100)
@game_window.event
def on_draw():
game_window.clear()
background_day.draw()
fps_label.draw()
if __name__ == '__main__':
pyglet.app.run()
Cela fonctionne parfaitement sans aucun problème. Ensuite, je décide de mettre en œuvre lots tirer si je change mon code:
main_batch = pyglet.graphics.Batch()
background_day = pyglet.sprite.Sprite(img=resources.background_day_image, x=0, y=0 ,batch=main_batch)
fps_label = pyglet.text.Label(text="fps: 0", x=100, y=100,batch=main_batch)
@game_window.event
def on_draw():
game_window.clear()
main_batch.draw()
Il arrive que je vois le fond, mais je ne vois pas l'écrit et je ne comprends pas pourquoi ou si je me trompe.
Merci
MISE À JOUR
A partir du manuel: Lorsque sprites sont recueillies dans un lot, aucune garantie ne peut l'ordre dans lequel ils seront tirés au sort. Si vous devez vous assurer que certaines images-objets sont dessinées avant les autres, utilisez deux objets ou plusieurs objets OrderedGroup pour spécifier l'ordre de dessin. Tout bon programmeur devrait lire le manuel en premier!
Si vous avez trouvé la réponse, il serait plus utile de poster comme réponse que comme une mise à jour au bas de la question. En ce moment, il semble que la question a 0 réponses, ce qui pourrait dissuader les gens avec le même problème de regarder –
vous avez raison! c'est plus utile – NiBE