Todoリスト

Android版でのTodoリスト。
やるかどうかわからないものも含まれている。

OpenGL ES2.0でレイヤーを実現

各種合成をシェーダーにより実現し、処理をGPUに移す。
高速化については不明だが、使用可能メモリが増大するので自由度が向上する。

キャッシュをSoftReferenceに書き換え

現状、メモリの空き容量を見てキャッシュの解放等を行っているが、SoftReferenceを使用した方法に変更して管理をVMに任せる。
画像がOpenGLのテクスチャに移動した時、この方式でないとメモリ容量の計算等で不都合が生じる可能性がある。
また、VMに任せることでより効率的に処理できるはず。

画面外からのスワイプによりメニュー等の表示

画面下や右などからスワイプした時にメニューなどを表示する機能を追加する。
3.0以降でメニューボタンが削られているので、何かしら代替機能で表示できるようにしたい。
位置的に上からのスワイプでメニュー表示出来ると良い。
他の下から右から等に割り当てる機能は要検討。

TJS2バイトコードをDalvikバイトコードへ変換

現状、TJS2はTJS2のバイトコードへ変換して処理しているが、さらにDalvikバイトコードへ変換する事でより高速な動作が行えるようにする。
Android2.2以降であればJITによってネイティブコードとして実行される可能性もある。
だいぶ高速化されたとはいえ、まだ遅いのでもっと早くしたい。

独自フォント読み込み

Android版の方は未実装なので、実装する。

レイヤーへの文字入力

レイヤーに直接文字を入力する機能がまだ実装できていない。

サウンドのループチューナーというかイベント対応

サウンドの再生位置によってイベント発生などさせて口パクなど出来るようにする。

独自バイナリフォーマット対応

XP3 ではなく、独自のバイナリフォーマットを作り、AutoPathの処理を高速化する。
独自バイナリフォーマットからの読み込みはソースコードに位置やサイズを書き出す事によって、実質的にAutoPathの処理自体をカットして高速化する。

APK expansion filesのサポート

ダウンロードは実装済みだが、Google PlayストアだとAPK expansion filesが使えるので、その機能のサポートをする。

非アクティブ時に終了しない

現在非アクティブになると終了してしまうが、終了しないようにする。
非アクティブ時に一時停止して、アクティブになったら再開できるようにする。
ただ、非アクティブになった時にメモリ解放があったら再開できない。
タイトルからスタートになってしまうことに。

サスペンド/リジューム対応

非アクティブ時など現在の状態を記憶し、メモリ解放などがあっても再開できる機能。
Windowの非アクティブ通知は送られるので、その時にTJS2で組んだシステム側でセーブし、再開時に何かしら通知を追加して、その時に復元するような形の方が望ましいか。

ファイル同期ツール

Android端末とPC上の任意フォルダを関連づけて同期させるツール。
PC側で編集したファイルをAndroid内へ頻繁にコピーする場合に必須のはず。

インストーラー

PCからAndroid端末へUSBを経由してインストールするためのインストーラー。
PC版へAndroidアプリを同梱したい場合に必要となる。
インストーラーの支援なしにユーザーが自力でインストールするのはハードルが高い。

WaveSoundBuffer.globalVolume を内部で処理するようにする

Android 版ではシステムの音量を設定するようになっているが、そうすると5段階程度しか段階がないので、内部で値を保持して各ボリューム設定に反映するようにする。

エンジンアプリでxp3のインテントを処理する

xp3がインテントで投げられたら自動的にダウンロードして起動する機能をエンジンアプリに入れる。

ダウンロード/コピー指定でメッセージを指定可能にする

ダウンロード/コピー指定のスクリプトでプログレスダイアログに表示するメッセージを指定可能にする。
現在は固定。

TF101で妙に動作遅いのを調査

TF101で妙に動作遅い原因を調べて、可能なら高速化する。

Googleドライブ等へセーブデータを書き出す対応

Google ドライブや Sky Drive などへデータを書き出せるようにして、セーブデータをそこに置き、PC/スマフォでセーブデータファイルのコピー等なく手軽に両端末でゲームを進められるようにする。

KAG3 バイナリフォーマットの実装

KAG3 スタイルのスクリプトのバイナリフォーマットを作り、それを読み込みできるようにする。
埋め込み TJS2 スクリプトなどバイトコードとして埋め込めるとなおよい。

TJS2 バイトコードでの Array/Dictionary 定数サポート

Array/Dictionary 定数の保存/読み込みに対応出来ていないので、対応する。