Androidの開発環境については
色々なフレームワークが出ており、
結構様変わりしているなぁと感じます。
僕がちらちら耳にするのは
3Dだと「Unity」、2Dだと「cocos2D」あたりでしょうか。
しかし、そんなフレームワークに頼らず
自分がやりたい機能だけを搭載したい思いから
NDKに手を出して、気がつけば一年を経過していました。
C++自体はじめての経験で模索状態でしたが
結構まともな状態まできてるなぁというのが個人的な感想です。
実際、NDKを使いつつもJNI経由で
Javaの機能を使っているものが多い中
以下の機能についてはNDK(C++)のみで実装できたので
結構な速度が出ています。
未来の移植性を考えても、極力Java(JNI)には頼りたくないのです。
・Assetsへのアクセス
libzipによるapkファイルの解凍で対応
・文字(日本語含む)の表示
FreeType2による文字表示
・XMLファイルの解析
tinyXMLによるXMLの解析
・テクスチャの読み込み
libPngによる画像ファイルの処理
・OpenGLによる描画
もちろんOpenGLライブラリ使用
やっぱりこの中で一番てこずったのは文字でしょうか。
英語の表示まではすんなりいったのですが
日本語を表示するまでにはかなり大変でした。
なにせNDKの中にwide文字系の処理が
ぽっこり抜けているので力技で解決した感じです。
次がAssetsですかね・・・
でも、これは最近は検索すると方法は結構
ひっかかるので、前よりは難易度が下がっているかもしれません。
まあ、こういうひとつひとつが悲しみと喜びを繰り返して
実現されていくので、それぞれに思い入れもひとしおです。
それから、まだ実現できていないのがインテントへの読み書きや
音楽の再生等、まだまだ課題は残っています。
こんな場末のブログなんて誰も読んでないと思いますし
やめときますw
そもそもブログにコメントすら入ったこと無いしねw