简体   繁体   中英

pyglet not running as expected in MacOS

I was implementing simple text translation using pyglet. It works perfectly when there is no config added in window = pyglet.window.Window() . However, the code does not run after config is added in line 8. I am using Mac High Sierra.

import pyglet

platform = pyglet.window.get_platform()
display = platform.get_default_display()
screen = display.get_default_screen()
template = pyglet.gl.Config()
config = screen.get_best_config(template)
window = pyglet.window.Window(config=config)
label = pyglet.text.Label('Hello, world', x=window.width//2, y=window.height//2,
                          anchor_x='center', anchor_y='center')

def update(dt):
  #print(dt) # time elapsed since last time we were called
  label.x += 1
  label.y += 1

@window.event
def on_draw():
  window.clear()
  label.draw()

pyglet.clock.schedule(update) # cause a timed event as fast as you can!
pyglet.app.run()

Try to define the config from your window config, Try this:

import pyglet
window = pyglet.window.Window()
context = window.context
#config = context.config
platform = pyglet.window.get_platform()
display = platform.get_default_display()
screen = display.get_default_screen()
config = screen.get_best_config()#if you need best config although if you add template as an argument it forms a deadlock.
template = pyglet.gl.Config(config=config)
#config = screen.get_best_config(template)
label = pyglet.text.Label('Hello, world', x=window.width//2, y=window.height//2,
                          anchor_x='center', anchor_y='center')

def update(dt):
  #print(dt) # time elapsed since last time we were called
  label.x += 1
  label.y += 1

@window.event
def on_draw():
  window.clear()
  label.draw()

pyglet.clock.schedule(update) # cause a timed event as fast as you can!
pyglet.app.run()

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM