GPiCASE で Akane を動かしてみる

 GPiCASE の RetroPie で ONScripter が動いたのは、SDL がフレームバッファに描画しているのだと思います。ということは、SDL で描画している Akane も動くんじゃないかと思い、試してみました。

 Raspberry Pi 4B でコンパイルしたものがそのまま動きました。共有ライブラリが必要なので、インストールが必要です。

$ sudo apt-get install -y libsdl2-mixer-2.0-0 libsdl2-ttf-2.0-0
・
・

 GPiCASE のボタンを使うためには、joystick を有効にする必要がありそうです。プログラムを修正して、GPiCASE で動かせるようにしてみます。

 ボタン類のイベントは、SDL_JOYBUTTONDOWN 及び SDL_JOYBUTTONUP で捕まえられるようです。十字キーはまた別なイベントのようで、SDL_JOYHATMOTION で捕まえられました。

 十字ボタンで選択やバックログの表示、選択肢までのスキップができます。

  • 上下:選択肢がある場合、選択肢の選択。セリフ表示の時は、バックログの操作。
  • 左:次の選択肢までスキップする。
  • 右:メッセージをすすめる。選択肢を選択する。

 ボタン類は次のように設定しました。

  • X ボタン;レジュームして終了。次回起動時に終了時の状態から始まります。
  • Y ボタン:メニューの表示/非表示。
  • A, B ボタン:メーッセージをすすめる。選択肢を選択する。
  • select ボタン:終了する。次回起動時はタイトル画面から始まる。

 まあ、ゲームをすすめるには十分でしょう。

 メニューの文字がちょっと小さすぎるようなので、大きくしました。ただ、メニューの文字サイズが、ソースの中でハードコードされているので、複数の修正が必要になりました。

 やはり、縮小した画面は荒く、文字も読みづらいので、縮小率が 1/2 のときのみ、補完処理をするようにしました。メニューを操作している時、メニューの背景が真っ暗になってしまいますが、支障はないようです。

 また、マウスポインタが表示され、邪魔になるので、マウスポインタを表示しないようにするオプションを追加しました。

 大体動くようになったようです。パッチは後で公開します。

Akane,GPiCASE

Posted by sirius