今回はAndroidとは関係ありません。
Androidで使えたらいいのになという内容です。

Beagleboardには、SGX530というGPUが載っています。
これさえ使えれば、レンダリングがかなり早くなるはずなのに、
残念ながら仕様がオープンではない為、宝の持ち腐れです。

以下は、Linux上でのデモです。
Linux用のライブラリはSDKにバイナリが含まれているので、
デモを試すことは可能です。
カーネル2.6.31+RTパッチ上で動かしていますので、最初のデモでは
140fpsと出ています。オリジナルのカーネルだと90fps前後でした。
ただ、カーネルでの違いが出たのはこのデモだけでした。





こちらはOGREのサンプルです。





幸い、GPUのデバイスドライバのソースコードはオープンなので、
それをカーネルに組み込んで、デバイスドライバのソースコードと
デモのトレースからわかる範囲で、Android用にGPU用のライブラリを
作成して、GPUの初期化と、いくつかioctl()を発行するぐらいは
確認したのですが、いかんせん仕様がクローズドなので、mmap()した
アドレスを何に使うかがわからない以上、どうしようもないかと、、
デバイスドライバがオープンなので、もう少しハックすれば、
何か見えてくるのかもわかりませんが、仕様さえオープンにしてくれれば
簡単に使えるようになるのに、、