Python 3.6.4. Ошибки окна аркадного модуля?{pyglet.gl.lib.GLException: b'invalid enumerant '} - PullRequest
1 голос
/ 28 марта 2019

UPDATE:

Я проверил видеокарты, установленные на компьютерах.

На том, где он «работает», установлена ​​графика Nvidia, а на другом - графика Intel HD R под адаптером дисплея в диспетчере устройств. Я предполагаю, что графического драйвера Intel HD R недостаточно (не содержит OpenGL требуется?).

Что мне нужно получить на графическом компьютере Intel HD R для работы модуля arcade?

ОРИГИНАЛЬНЫЙ ВОПРОС:

Испытывает очень странную проблему, когда написанный мной код на python работает на одном компьютере, но не на другом, и я не уверен, почему ...

У меня установлен Python 3.6.4 на обоих компьютерах. Любая версия 3.6+ должна иметь возможность запускать модуль Arcade.

Это мой код, супер простые вещи:

# import needed modules
import random
import arcade

arcade.open_window(800, 600,'most awesome nothing', False)
arcade.set_background_color(arcade.color.BLUE)
arcade.start_render()

python = arcade.Sprite(r"C:\Users\The Cube\Desktop\STUDENT FILES\Python Game Projects - Teens\diamond.png")

python.center_x = 200
python.center_y = 200
python.draw()

arcade.finish_render()
arcade.run()

Отлично работает на одном компьютере, но на другом я получаю эту ошибку:

Формат кода:

Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 
 RESTART: C:\Users\The Cube\Desktop\STUDENT FILES\Python Game Projects - Teens\phoenix is a cool cat.py 
Traceback (most recent call last):
  File "C:\Users\The Cube\Desktop\STUDENT FILES\Python Game Projects - Teens\phoenix is a cool cat.py", line 5, in <module>
    arcade.open_window(800, 600,'most awesome nothing', False)
  File "C:\Users\The Cube\AppData\Local\Programs\Python\Python36-32\lib\site-packages\arcade\application.py", line 384, in open_window
    _window = Window(width, height, window_title, resizable, update_rate=None)
  File "C:\Users\The Cube\AppData\Local\Programs\Python\Python36-32\lib\site-packages\arcade\application.py", line 56, in __init__
    gl.glEnable(gl.GL_MULTISAMPLE_ARB)
  File "C:\Users\The Cube\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pyglet\gl\lib.py", line 105, in errcheck
    raise GLException(msg)
pyglet.gl.lib.GLException: b'invalid enumerant'
>>> 

Скриншот: enter image description here

Вопрос: Почему он работает на одном компьютере, а не на другом?

Любая помощь будет принята с благодарностью. Спасибо!

1 Ответ

1 голос
/ 29 марта 2019

Эта строка кода включает мультисэмплинг OpenGL. Требуется для сглаживания. Похоже, что не поддерживается комбинацией видеокарта / драйвер.

Вы можете создать экземпляр arcade.Window с помощью antialiasing=False, но используемая вами команда open_window, к сожалению, не поддерживает это в 2.0.1.

Поскольку проблема была открыта для постепенного понижения, если мультисэмплинг не поддерживается:

https://github.com/pvcraven/arcade/issues/339

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...