2011年3月10日木曜日

Titanium mobileのOpenGL ESモジュール!(を実験中)


Titanium mobileでARマーカーを検出できるようになると、必然的にマーカーの上に3Dなオブジェクトを乗せたくなります。

そこで、Titanium mobileでOpenGL ESを扱えるようなモジュールを作ってみようかと思っています。

とりあえず途上ですが(まだ作業2日目)、少し動いたので公開します。
git@github.com:atsusy/tiopengles.git から cloneしてください。

*はじめに
- iOSのモジュールです。Androidでは使用できません。
- OpenCVを使用しています。
- シミュレータでも動作します。(まだデバイスでの動作が確認できてません)
- 現時点では、SDKバージョン1.6.0以上としています。
- 最終的に使えるものになるかどうか不明です...

*動かし方(Macの場合です、すいません)
~/.profileに、以下を追記して下さい。
alias titanium='/Library/Application\ Support/Titanium/mobilesdk/osx/1.6.0/titanium.py'

チェックアウトしたディレクトリで
titanium run
でシミュレーターが起動し、実行されます。


*今できること
example/app.js をご参考ください。

- プロジェクションの設定(zNear, zFar, fieldOfView[画角])
- 照明の設定(ambient, specular, diffuse, position, direction)
- モデルを読み込む(インタフェースのみで実装は立方体のモデルを固定で定義)
- モデルの移動と回転

*これからやりたいこと
- 3dsフォーマットのモデルデータを読み込む(頂点、法線、テクスチャ)
- カメラの設定(位置と向き)
- カメラ、照明、モデルのアニメーション


******つづきはこちら******