OpenGLES1.1のスプライトライブラリを作ってみたり
twitterでは、ぼそぼそと呟いていますが、Astro Zillがほぼ終わり、自前のスプライトシステムを作り出して、なんとか運用できる所まできました。
あ、Astro Zillというのは、リリース中のiPhoneパズルゲームです。
http://itunes.apple.com/jp/app/astro-zill/id384356532?mt=8
cocos2Dというフレームワークを使っていたのですが、自前で作りたいという欲求があって、作り出しました。
参考にした書籍はこちら。
- OpneGLで作るiPhoneSDKゲームプログラミング
こちらの書籍を参考に、ベースとなるスプライト表示を行いました。
- そのまま使える-iPhoneアプリプログラム
こちらの書籍を参考に、作ったベースにブレンディング、ポイントスプライトなどの機能を追加していきました。
途中、両方を行ったり来たりしましたけど。
cocos2Dを使っていてcocosNodeが便利だったので、似たようなものを造ろうと、描画をノードで行うようにしたり、親ノードの座標変換、scale、flip、などの影響を子孫ノードが受けるようにしてみたりと。
OpneGLの描画と元となるノードの座標計算の兼ね合いで、flipと回転座標系の整合性は少々面倒でしたけど。
大昔の8bitコンピュータ頃から自分でゲームプログラミングをしてみたいとか、ライブラリみたいなものを作りたいとか思っていたのでした。
OpenGLは、Astro Zillを作り始める前、少しかじったのですが、まったく歯が立たちませんでした。
1つ作り上げて、少しは技能が上がった事もあるとは思うのですが、良い書籍が多数出版された影響が大きいです。
なんとか作る事ができて、ちょっぴり満足しています。
とかいうものの、昨日もバグを見つけて直したりしてますけれど。(汗)
もし、OpneGLで自前スプライトを作ろうとか思う方がいらっしゃいましたら、上の書籍はとても参考になります。
自前じゃなければ、cocos2Dがお奨めです。