mieki256's diary



2017/09/02() [n年前の日記]

#1 [ubuntu][python][pi3d] Ubuntu Linux 16.04 LTS に pi3d をインストール

Pythonから OpenGL ES を使える _pi3d は、 Linux や Windows 上でもインストールすることが可能らしい。足元で埃をかぶってる、Ubuntu Linux 16.04 LTS が入ったサブPCを使って、インストールできるのか試してみる。

Ubuntu Linux 上で OpenGL ES が使えるようにする。 :

デスクトップ機で OpenGL ES を使うためには、mesa-utils-extra が必要らしい。仮想的に OpenGL ES を持ってるような状態にしてくれるとかなんとか…。とりあえずインストール。
sudo apt install mesa-utils-extra

実機にディスプレイを繋いで、OpenGL ES の動作確認。
es2gears
ギアがクルクル回るアレが表示されて、FPSも出力された。動いてるっぽい。

pipをインストール。 :

pipをインストール。pip を使えば、Python のモジュールをネット経由でインストールできる。
sudo apt install python-pip python3-pip

バージョン等を確認。
$ pip3 --version
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

$ sudo -H pip3 search pi3d
pi3d (2.20)  - pi3d OpenGLES2 3D graphics library
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
「pipをアップグレードしろ」と言われてしまった。

pipをアップグレードする。
$ sudo -H pip3 install --upgrade pip

$ sudo -H pip3 --version
pip 9.0.1 from /usr/local/lib/python3.5/dist-packages (python 3.5)
アップグレードできた。

ちなみにUbuntu上では、pip は Python 2.7用。pip3 は Python 3.x 用。自分の環境では、pip のほうは既に 9.0.1 になってた。

pi3dをインストール。 :

pipを使って、pi3dをインストール。
sudo -H pip install pi3d
sudo -H pip3 install pi3d

デモスクリプト群の pi3d_demos も git で取ってくる。
git clone https://github.com/pi3d/pi3d_demos.git

pi3dの動作確認。 :

デモスクリプトを動かしてみる。ディスプレイを繋げた実機上で操作。
cd pi3d_demos
python Earth.py
地球と月がグルグル回るソレが出てきた。たしかに Linux上でも動いた。

他のスクリプトも動かしてみる。
Python ForestWalk.py
Permission denied /dev/input/mice と怒られて終了してしまった…。

/dev/input/mice のパーミッションを確認してみる。
$ ll /dev/input/mice
crw-rw---- 1 root input 13, 63  9月  2 08:51 /dev/input/mice
ユーザがinputグループに入ってないとアクセスできないのだな…。

ユーザをinputグループに所属させる。
sudo gpasswd -a ユーザ名 input
ログアウトして再ログイン。

再度、pi3dのスクリプトを実行。
python ForestWalk.py
今度は動いた。

ということで、Linux上でも pi3d が動作することを確認できた。

自分の手元の環境の問題点。 :

表示はできたけど、描画面積が大きいスクリプトを動かすと、なんだかガクガクしてるな…。

サブPCのCPUとM/Bは、AMD Athlon II X2 250 (3.0GHz, 2コア) + ASRock M3A785GMH/128M (AMD785G + SB710チップセット使用)。このスペックでは重いのかもしれん。というか、AMD785Gチップセットの ATI Radeon HD 4200 が足を引っ張ってるんじゃないかな。たぶん。

VMware + Ubuntu でも試してみた。 :

調子に乗って VMware + Ubuntu 上でも pi3d のインストールを試してみた。

import pi3d で「そんなモジュールはねえよ」と怒られた…。pip じゃなくて pip2 を使ってインストールしないとダメっぽい。pip2 が Python 2.7用。pip3 が Python 3.x用。ということなのかな。
sudo -H pip2 install pi3d

この状態なら、python Earth.py が動いてくれた。

ただ、VMware 上では vsync(垂直同期)を見てくれないというかサポートしてないようで。物凄い速度で、地球と月が回る…。

ググってみたら、.vmx に
mks.vsync = "1"
を追加する、という話を見かけたので試してみたけど効果は無かった。もしかするとMac上で動いてるVMware用の設定、なんだろうか。

以上です。

過去ログ表示

Prev - 2017/09 - Next
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project