2006年9月22日の日記の1番目の記事へのコメント
■ファミコンの背景描画
世間では東京ゲームほげほげとやらでPS3や1チップMSXで盛り上がってるようですが,ここではファミコンです.
今日は背景ちょっといじってみて,その後キャラ動かしてみたりしたいなぁと思ってたんですが,背景ではまりまくり.多分ファミコンプログラム書いてる(た)ひとには常識で,何をそんなことで騒いでんだという話なんでしょうけど,BGのネームテーブルの先頭から32byte分(8x8のタイル横一列分)のデータって,スクロールの値を (0, 0) に設定すると画面の上にはみ出して見えなくなっちゃうんですね・・・.いくらいじっても画面に反映されず,相当苦しみました(;´Д`).まー,PALにすると見えるそうですが,知るかそんなのって感じ・・・.
あと,これはエミュレータ依存なのかもしれませんが,FCE Ultraだとネームテーブル更新した後にスクロール値を再設定しないと背景のタイルがずれるっぽいですな・・・.これも相当はまった・・・(;´Д`).
で,まあそんなんで背景をアニメーションさせてみました.一応16x16横いっぱいくらいは平気みたいですな.あと,パッドの入力の拾い方もチェック.うー,パッド回り,設計が気持ち悪い・・・.本当はショット出すくらいまでやりたかったけど疲れて全然頭が回りません(;´Д`).
そいや,ファミコン版パロディウスの1面の猫戦艦とかボスのところでは,デカキャラをBGで描画して,スクロールで動かしてるようですが,下の方にやっぱりBGで描かれてると思しき波がありますよね.これ,どうやって処理してんのかなぁ.ラスタースクロール使えばできるのか?上下2画面で一方にデカキャラ,もう一方に波を置いて,波と空の境界位置に0番スプライト置いて描画のタイミングで一気にy方向にスクロールさせるとか?うーん,とても大変そう・・・.
2006年9月22日の日記の1番目の記事へのコメント
[コメントを書く]