2019/02/05(火) [n年前の日記]
#1 [pyxel] PyxelがWindows8.1タブレットPC上で動かなかった
手持ちの Windows8.1 タブレットPC、DELL Latitude 10 で Pyxel を動かせないか試していたのだけど。Python 3.7 だの Pyxel だのをインストール後、サンプルを動かそうとしたらエラー発生。
Hello World すら実行できないのか…。まあ、Pyxel のみならず、TIC-80 も動作しなかった環境なので、「ああ、やはりそうなるか」てな印象なのだけど。
Dell Latitude 10 のスペックは以下。
Pythonその他のバージョンは以下。
エラーメッセージを眺めた感じでは、glUniform1i を使おうとしてエラーが出ているように見えたけど。 _OpenGL 2.0 から _glUniform が使える はずだし、対応してる OpenGL のバージョンが古過ぎて、というわけではないように思える…。 _shaders.py は、 _GLSL の version 120 を指定してるから、OpenGL 2.1 が前提で書かれてる気配もあるし…。
メインPC、Windows10 x64 + GPU : NVIDIA GeForce GTX 1060 上ではフツーに動いてるんだよな…。よくわからん…。
まあ、Atom Z2760 は、「PowerVR系の Windows10用ビデオドライバが用意できないから Windows10 へのアップグレードはできません」と切り捨てられたぐらいにダメなCPUだし。そもそも Intel は腐ったビデオドライバを出すことで有名なので、「内蔵GPUを使ってる環境なんて知らんがな」と切り捨てちゃうのもアリかもしれない…。と言っても、その場合はノートPCの類までごっそり切り捨てることになりそうな。
つくづく、OpenGL は鬼門。
C:\Users\hoge\Documents\prg\pyxel\pyxel_examples>py 01_hello_pyxel.py Traceback (most recent call last): File "01_hello_pyxel.py", line 20, in <module> App() File "01_hello_pyxel.py", line 8, in __init__ pyxel.run(self.update, self.draw) File "C:\Python37-32\lib\site-packages\pyxel\app.py", line 255, in run main_loop() File "C:\Python37-32\lib\site-packages\pyxel\app.py", line 248, in main_loop self._draw_frame() File "C:\Python37-32\lib\site-packages\pyxel\app.py", line 477, in _draw_frame self._border_color, File "C:\Python37-32\lib\site-packages\pyxel\renderer.py", line 119, in render self._draw_shader.set_uniform(name, "1i", i) File "C:\Python37-32\lib\site-packages\pyxel\gl_wrapper.py", line 45, in set_u niform getattr(gl, "glUniform" + param_type)(loc, *params) File "C:\Python37-32\lib\site-packages\OpenGL\error.py", line 232, in glCheckE rror baseOperation = baseOperation, OpenGL.error.GLError: GLError( err = 1282, description = b'\x96\xb3\x8c\xf8\x82\xc8\x91\x80\x8d\xec', baseOperation = glUniform1i, cArguments = (18, 0) )
Hello World すら実行できないのか…。まあ、Pyxel のみならず、TIC-80 も動作しなかった環境なので、「ああ、やはりそうなるか」てな印象なのだけど。
Dell Latitude 10 のスペックは以下。
- OS : Windows 8.1 32bit
- CPU : Intel Atom Z2760
- GPU : CPU内蔵。Intel Graphics Media Accelerator (PowerVR SGX 545相当)
- RAM : 2GB
Pythonその他のバージョンは以下。
- Python 3.7.2 x86
- cffi 1.11.5
- glfw 1.7.1
- numpy 1.16.1
- Pillow 5.4.1
- PyOpenGL 3.1.0 (3.1.3b2 も試したが同じエラーが出る)
- pyxel 1.0.1
- sounddevice 0.3.12
エラーメッセージを眺めた感じでは、glUniform1i を使おうとしてエラーが出ているように見えたけど。 _OpenGL 2.0 から _glUniform が使える はずだし、対応してる OpenGL のバージョンが古過ぎて、というわけではないように思える…。 _shaders.py は、 _GLSL の version 120 を指定してるから、OpenGL 2.1 が前提で書かれてる気配もあるし…。
メインPC、Windows10 x64 + GPU : NVIDIA GeForce GTX 1060 上ではフツーに動いてるんだよな…。よくわからん…。
まあ、Atom Z2760 は、「PowerVR系の Windows10用ビデオドライバが用意できないから Windows10 へのアップグレードはできません」と切り捨てられたぐらいにダメなCPUだし。そもそも Intel は腐ったビデオドライバを出すことで有名なので、「内蔵GPUを使ってる環境なんて知らんがな」と切り捨てちゃうのもアリかもしれない…。と言っても、その場合はノートPCの類までごっそり切り捨てることになりそうな。
つくづく、OpenGL は鬼門。
◎ DELL Latitude 10のOpenGL対応状況。 :
一応、
_OpenGL Extensions Viewer
から保存したログを置いときます。
_glreport_delllatitude10.txt
スクリーンショットも貼っておこう…。役に立つのか立たないのか、分からんけど…。
_glreport_delllatitude10.txt
スクリーンショットも貼っておこう…。役に立つのか立たないのか、分からんけど…。
[ ツッコむ ]
以上です。