ShinGL4 Linux動作確認した

VirtualBoxで動かして動作を確認。

CentOS5ではglibのバージョンが低く、JInput部分でエラーが出ているようだが問題なく動いた。

ただし、フルスクリーンは動作せず、動作そのものもものすごく遅い。



速度は遅くて当たり前だなー


と思ったけど、確か新しいVirtualBoxはハードウェアアクセラレーションが効くはず。

調べてみたところCentOS 5のカーネルは古くて有効になってないみたい。


新しいのはないのか、ということでUbuntu初導入。サーバーとデスクトップがあるが、サーバーのほうがいろいろとテストをするにも楽だろうと思いつつセットアップ。キャラクタベースのインストーラとか懐かしい感じがする。セットアップし終わって起動した後絶望する。

ああ、CUIなのね。

おいらMS-DOSとかHuman68KとかはCUIベースは好きなのにLinuxCUIは受け付けない人種。おそらく膨大なファイルがありどこになにがあるのか把握しきれていない気持ち悪さがあるのだろう。MS-DOSやHuman68Kはその環境構築に一から手間隙をかけて年単位で構築していったものだ。どこに何があるか全て頭の中にあって始めてCUIは成り立つもの。大きすぎて何がなんだかわからないシステムはGUIのほうが肌に合うようだ(実際Linuxディレクトリの移動はGUIベースで移動したりコピーしたりしてから端末起動することが多し。たんにファイラーがないからCUIがきらいなだけかもしれないけど)。


というわけで今度はDesktop版をいれる。こちらはCentOSと同様のグラフィカルなセットアップだ。個人的にセットアップだけならCUIベースでもかまわないと思うけどね。

起動してみる。ふむ。なんか画面のリフレッシュ周りがうまく動いてないときがあるようだ。そのかわりウインドウがびよーんとアニメーションされて表示されていたり、半透明になっていたり影がついていたりしている。これは3D Desktopが有効になってるくさい。

そこでJavaをセットアップし、起動!

おお、サンプルプログラムが60fpsで余裕で動いてる。ティアリングも見当たらない。ちゃんと垂直同期取れているようだし、ハードウェアアクセラレーションが効くようになったというのは本当のようだ。すごいな。VMの欠点として描画の遅さがあったのだが、ここが解決されるってのは。ただし、リフレッシュの描画が完璧ではない部分が解決されれば(たとえばゲストOSのウインドウを最小化して元に戻すと画面は表示されない。ゲストOSのリフレッシュがされていないから当たり前ではあるが)だが。

こちらもフルスクリーンは動かず。左上に小さいウインドウが出ていた。ただし、ESCを押すと消えることから動作そのものは動いている模様。
http://shin.cside.com/diary/2009/1019-01.png
文字化けしているのはフォント設定をしていないため。


とりあえずクロスプラットフォームとしてちゃんと動いているのに安心した。

LinuxならばVMで確認できるのでこれも加えて3つのOS用のバイナリを同梱するようにしよう。


しかし、慣れていないためかUbuntuは使いにくい。LinuxはやっぱりCUI文化だから、好きな場所をカレントディレクトリにして端末を開くのが簡単にできるCentOSのほうが楽な気がする。GUIだとユーザー権限で動作するので使いにくいというのもある。rootで動かさないというのを意識しているUbuntuはおいら見たいなど素人にはあわないと思った。やっぱりredhat系のほうが楽かな。

あ、VirtualBoxのゲストOSとの連動機能はUbuntuのほうがよく動いてるみたい。CentOSの場合VirtualPCでもVMWareでも連携機能がうまく動かないからどっちもどっちなのかもしれないけど。