2017/10/19(木) [n年前の日記]
#1 [raspberrypi] Raspberry Pi Zero WでOpenGLが使えそうかテスト
Raspberry Pi Zero 関係の記事をググって眺めてたら、以下の記事を見かけて。ちなみに、2016年頃の記事。
_OpenGL Drivers on Raspberry Pi B/B+/Zero - Raspberry Pi Forums
一応公式としては、
「Raspberry Pi で OpenGL を有効にできるのは Pi2/Pi3だけ」
「Pi1やPi Zeroはサポート外。メモリが少ないからな」
「しかも GL driver は鋭意開発中のソレだから安定動作は期待するなよ?」
と言うことになってるけど。上記の記事を眺めた感じでは、どうやら Pi Zero でも GL driver が動かせそうか試してみた人が居るらしい。
これはもしかすると、Pi Zero でも、OpenGL ES ではなく、 OpenGLを使える可能性があるということだろうか…。であれば自分も試してみたいところだなと。
_OpenGL Drivers on Raspberry Pi B/B+/Zero - Raspberry Pi Forums
一応公式としては、
「Raspberry Pi で OpenGL を有効にできるのは Pi2/Pi3だけ」
「Pi1やPi Zeroはサポート外。メモリが少ないからな」
「しかも GL driver は鋭意開発中のソレだから安定動作は期待するなよ?」
と言うことになってるけど。上記の記事を眺めた感じでは、どうやら Pi Zero でも GL driver が動かせそうか試してみた人が居るらしい。
これはもしかすると、Pi Zero でも、OpenGL ES ではなく、 OpenGLを使える可能性があるということだろうか…。であれば自分も試してみたいところだなと。
◎ 有効にする方法。 :
とりあえず、有効にする方法としては、/boot/config.txt に
ちなみに手元の環境(Raspberry Pi Zero W + raspbian stretch)で試した感じでは、
また、GL driver は2種類あって…。Full KMS は動いたけど、Fake KMS は画面が表示されなかった。
前述の記事では、/usr/bin/raspi-config を編集して、do_gldriver() 内の Pi Zero 用の処理を削除 or コメントアウト、と書いてあったけど。raspbian stretch では、該当する処理は見当たらず。現行版では、修正は不要なのかもしれない。
dtoverlay=vc4-kms-v3d,cma-128を追加するだけ、らしい。もしかすると sudo raspi-config で GL driver (Full KMS) を有効にしてから修正したほうがいいのかもしれないけど。
ちなみに手元の環境(Raspberry Pi Zero W + raspbian stretch)で試した感じでは、
- hdmi_drive=2
- gpu_mem=128
#hdmi_drive=2 #gpu_mem=128
また、GL driver は2種類あって…。Full KMS は動いたけど、Fake KMS は画面が表示されなかった。
前述の記事では、/usr/bin/raspi-config を編集して、do_gldriver() 内の Pi Zero 用の処理を削除 or コメントアウト、と書いてあったけど。raspbian stretch では、該当する処理は見当たらず。現行版では、修正は不要なのかもしれない。
◎ 動作確認。 :
glxgears は、60FPS前後で動いてくれた。ちなみに、GL driver を有効にしてない状態では、色がめちゃくちゃな上に、7FPSしか出ない。
neverball というゲームアプリも動いてくれた。ただ、しばらくプレイしていると、どんどん処理が重くなって画面は紙芝居状態に。1FPSも出ない状態がしばらく続いたりして。
元々公式がサポートしてないことをやってるので、まあ、仕方ないよな…。
公式が「サポートしないよ」と言ってるのも分かる気がする。設定を少し間違えると画面が表示されなくなるのは厳しい。Raspberry Pi しか持ってない人がうっかりやってそういう状態になったら手詰まりになる。なので、非サポートも仕方ないのかも。
neverball というゲームアプリも動いてくれた。ただ、しばらくプレイしていると、どんどん処理が重くなって画面は紙芝居状態に。1FPSも出ない状態がしばらく続いたりして。
元々公式がサポートしてないことをやってるので、まあ、仕方ないよな…。
公式が「サポートしないよ」と言ってるのも分かる気がする。設定を少し間違えると画面が表示されなくなるのは厳しい。Raspberry Pi しか持ってない人がうっかりやってそういう状態になったら手詰まりになる。なので、非サポートも仕方ないのかも。
◎ 証拠画面。 :
OpenGL が動いてる様子を、デジカメで撮影してアップロードしてみたり。
画面がボケボケでちょっと分かりづらいけど…。一応、ギヤが回ったり、3DCGっぽいゲーム画面が動いてることぐらいは分かるかなと。ちなみに、液晶ディスプレイの下に居るのが、Pi Zero W。
クッキリ状態でキャプチャできる何かしらが欲しくなってくるな…。でも、Raspberry Piの動作画面をキャプチャするためだけに、その手の機器を購入するのもアホらしいな…。
画面がボケボケでちょっと分かりづらいけど…。一応、ギヤが回ったり、3DCGっぽいゲーム画面が動いてることぐらいは分かるかなと。ちなみに、液晶ディスプレイの下に居るのが、Pi Zero W。
クッキリ状態でキャプチャできる何かしらが欲しくなってくるな…。でも、Raspberry Piの動作画面をキャプチャするためだけに、その手の機器を購入するのもアホらしいな…。
[ ツッコむ ]
以上です。