0_0_54

 obake   specification   version 

_53A の評価後、_54 として新機能実装へ

_53A で落下処理に絡んだ

  • スワップキャンセラー
  • 重力キャンセラー

ふたつの中断処理機能をゲームエンジンの仕様として実装。

スワップキャンセラーはスワップ操作をキャンセル。

重力キャンセラーは一時的に落下処理を停止させる。

重力キャンセラーは落下処理にディレイを作るためのもので、スワップキャンセラーのように操作自体を無かったことにはしない。

Android Build issue

ルームのリスタートを何度もかけるとテスト操作中に無言でアプリケーションが落ちる現象を複数回確認。

落下したオブジェクトをリスト化して保存

総当り方式だと動いたオブジェクト数が少ない場合に無駄な計算が増える。この無駄を無くすためには落下したオブジェクトだけに連鎖探索を行うように、IDをデータ構造に格納しておく方が良い。ゲームボード左上から検索していくとして、プライオリティキューを利用するべきかもしれない。

Phy_Ck_Chain() の実装へ向けて

Phy_CHaiN = ds_queue_create();//ID

落下処理が終わったオブジェクトIDをキューに入れていく。これを元にループを回して連鎖判定を行う。これなら最初から数が限定されているので無駄なループ処理を省ける。

連鎖判定の実装1

基本アルゴリズムは実装完了。正常に動いているが、判定のタイミングがすこし速すぎるためちょっと判定から消滅までのタイミングが性急すぎる気がする。タイミングを調整するべきかどうかで悩む。

一旦、動作を正確にテストしたいため _54 は安定性評価のため時間をかけて様子を見ることにした。

この _54 は現時点で新機能の実装を一旦停止し、すこしキャラクターアニメーションなどグラフィックスリソースの開発に時間を割くことに。




次へ

前へ