cocos2d for iPhoneを試してみる
まずはcocos2d for iPhoneを試してみる事にしたました。
cocos2dは文字通り2Dのグラフィックス・フレームワークです。多くのAPIはOpenGL ESに対応しており、多彩なグラフィックス表現ができます。
ライブラリのサンプルを実行するだけでもその機能の奥深さが伺えます。
OpenGL ESだけではなく文字列などにも対応しており、UILabelなどを使わずに日本語を表示したりも出来ます。
cocos2dにはインストーラも付いていて、これを起動するとxcodeのテンプレートをインストールしてくれます。パッケージをダウンロードしたディレクトリーに移動し、ターミナルから下記の様に実行します。
$ ./install-templates.sh
これによってxcodeから”File” -> “New…” -> “New Project…” と進むと
Universal Applicationも作成出来ます。便利ですね。
もちろんこのプロジェクトの中で開発を進めれば効率よくエフェクトなどをインプリしたアプリが出来ると思います。
ただ個々で私にとって問題なのが以下の点です。
- Interface Builderが使いにくい
- フレーム・ワークが強く結びつきすぎている。
- 2D
最初の2つは努力次第でなんとかなるのではないかと思います。
RootViewControllerもUIViewControllerのサブクラスですし、そこで生成されるビューもUIViewのサブクラスのEAGLViewで見慣れた感じの構成です。
3番目の2Dもエフェクトなどで3Dっぽく見せる事は可能だと思います。何より全てがオープン・ソースですので、いざとなれば将来のiOSのバージョンアップ等に対しても自分で対応は可能だと思います。
実際に今までのプロダクトの中でもcocos2dのルーチンを参考にさせてもらって部分もあります。依存関係の薄いルーチン群でしたらとても重宝に使えます。
しかしやはり今回は3Dにコダワリを持っていますので、cocos2dの採用については保留にしておく事にします。
xcode 4.xでのOpenGL ESテンプレート
xcode 4.xの”OpenGL Game”で生成されるテンプレートは使うつもりはありません。このテンプレートで生成されるプロジェクトがiOS 5.xをベースとしたGLKViewを使っているからです。おそらく生産性は良いのでしょうがrequirementをiOS5.0にするのには抵抗があります。OpenGL ES 2.0ベースにするだけでiPhone3Gを切り捨てなくてはなりません。そのうえiOS4.x以前を切り捨ててしまうのはマーケットの大きさとして大丈夫かな?と単純に思います。
Appleが各デバイスや各iOSの出荷数などを公表してくれれば別ですが、今の所は不採用としたいと思います。
Leave a Reply