NO.89 task_test

89_task_test.png

概要

M-KAIさんの「擬似マルチタスクを用いたゲームプログラミング(WonderWitch)」をGBA移植しました。ジャッジメントシルバーソードの機能縮小版に相当するそうで、とても勉強になっています。簡単ながら以下にポイントをまとめました。

  • 固定少数点用構造体の定義(unionを使用してu16<->u8*2)
  • タスク構造体はシンプルにworkエリアのみ確保する。このエリアは用途別に座標や弾管理などマップされ、読み書きはポインタで操作する
  • VSYNC毎にスプライトを再設定しているので管理がラク(初期化、登録しなおし)
  • タイトル画面自体も、実はタスク(なんでもできそう?)

ここからは発展方法について。

  • 全タスクのフェーズを一括変更する関数の追加
  • タスクに処理優先度を設ける
  • タスク登録時の空きワーク探しに、自前のスタックを用いる
  • タスクの連結リストを設ける

開発環境

  • devkitARM r21

更新履歴

  • 2007/02/09

添付ファイル: file89_task_test.png 372件 [詳細]

Last-modified: 2008-03-04 (火) 19:01:17 (5186d)