About WonderWitch 今回のお題:
『短期集中連載 WonderWitch 日記 (3)』


●今日の一発目

「開発っ開発っ」「できんのじゃ〜」

8/3 〜 8/6

いい加減、ULの度にファイル名を変えるのも面倒になってきたし、 一つのファイルにバキバキ書き込んでいくのもアレなので、ファイル名を固定。 それに伴って、ゲームのタイトルも決定いたしました。

タイトル: 「ぶろっくで某」

完璧です。ファイル名は blobow.fx ね。で、ソースを数ファイルに分割。

blomain.c
main() と分類不能な処理
blocmn.h
共通ヘッダファイル。グローバル変数の宣言( 定義ではない )等
bloinit.c, bloinit.h
各種初期化を行う
bloctrl.c, bloctrl.h
スプライトの移動、当たり判定など
blostage.c, blostage.h
ステージ生成、描画などを担当。読み込みもここに入る予定
( blosound.c, blosound.h )
サウンド全般。まだない

もしかしたら、ブロック関係だけまた分離とかするかも。 こういうときに make が威力を発揮しますな。

ちなみに、各種ツール( bmpcnv とか )の最新版が出ているので、 差し替えてない方は差し替えた方が吉です。かなり使い易くなってます。
各種ファイルのバグフィクス版も出ていて、上手く動いていなかった lcd_off() / lcd_on() も動くようになってます。早速採用しました。

浮動小数点を使ったとき以来の速度低下に遭遇。ブロックの再描画を「毎回全部書き換え」 でやってたのが原因らしい。とりあえず、書き換えフラグを作って回避。
ブロックデータの最上位ビットを使うとかした方が賢かったかな?

このくらいになってくると、もうトラブルも WonderWitch 固有のモノではなくて、 普通にゲームを組んでいても出くわすようなモノばかりになって参りました。 判定条件が逆だったとか、x 座標と y 座標を逆に書いていたとか。(苦笑

「ブロックで某」の原型・8 月 6 日版
8/6 現在の暫定バージョン。ブロックにぶつかった後のボールの動きが妙です。 「ボールが 2 つのブロックにまたがってぶつかった場合は普通に跳ね返るけど、 1 つのブロックのみにぶつかった場合に跳ね返ってこない」と言うモノ。どうも原因不明です。むぅ。
今のところ当たり判定は全て矩形範囲で行っているので、これを距離からの判定にできれば、 迂回できるかも知れません。ただ、それをやると浮動小数点演算が発生しそうで怖いですな。

ああ、画像を描き換えたので、見栄えは良くなってるかも。(笑

●備考

とりあえずまともに動作するようにしたいです。
次は音でも付けてみようかな〜と思っております。 あと、どうせ最後にゃやらにゃならない、矩形でなくて円での当たり判定処理。

その前に、小物を数本でっち上げてみようかな。勉強を兼ねて一休みと言うことで。

役モノ・重力付きの「TENNIS」(contributeされてたアレ)
あの操作法に惚れました。(笑) バンパーも球もあるし。 ぶつかるモノも、少なければ管理方法を変えて対処できるかも。
連打測定器 for WonderSwan
スコアデータを作るための勉強とか。 タイマの使い方、音の作り方なんかもできそうですな。
波動 er 度チェック for WonderSwan
ファイルの読み書きと、グラフィックとテキストの連動。 PC でやってるようなややっこしい処理を WW で。演出の練習とかも。

まぁ、やっぱりゆっくり行こうと思います。


戻る