[過去ログ]
ファミコンのプログラム3 (985レス)
ファミコンのプログラム3 http://echo.5ch.net/test/read.cgi/gamedev/1214210285/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
941: 名前は開発中のものです。 [] 2012/02/27(月) 17:29:23.40 ID:d2Rr2gFY http://loda.jp/2a03/?id=5 上は当たり判定で、スプライトの座標をタイルに変換させる。でもたまにルーチンで誤変換起こしてしまってる デバッグしてもよく分からない 原因すらわからねぇ http://echo.5ch.net/test/read.cgi/gamedev/1214210285/941
945: 名前は開発中のものです。 [sage] 2012/02/28(火) 22:42:52.32 ID:ac5+J/w/ >>941 ・CrashBlock_Routine:でbcs, bccを使ってるのが敗因。 0<= 弾の中心座標 <8 の論理を構築できてない。 bpl, bmiを使った方が大小関係が直感的に分りやすい。 その際、lda <Bullet_Y_Center → cmp Block001y,x のように不等式で挟まれる側を先にレジスタにロードした方がやりやすいはず。 またadc, sbcと違い、cmp系の前にはclcは必要ない。 ・ゲームループがまずく、infinityLoop:内のルーチンの実行回数のフレームレートが一定でない、不安定動作のおそれあり。以下のループが無難。 __ここでNMI有効にせよ__ infinityLoop: ;VBlankを待つ間は無限ループ jmp infinityLoop mainLoop: ;メインループ __ここでNMIを無効にせよ__ ;BGとスプライトの表示をOFF lda #%00000110 sta $2001 lda #$3 ;スプライト描画のためのDMA転送 sta $4014 jsr BlockDisappear ;ブロック消滅;$2006-$2007への書き込みはNMI直後に、VBlankが終わる前になるべく早めに jsr SetScroll ;スクロールセットもVBlankが終わる前になるべく早めに ;BGとスプライトの表示をON lda #%00011110 sta $2001 jsr PadGet ;パッド入力チェック jsr NormalBullet ;弾丸発射 jsr PlayerSpriteMove ;機体の移動 jsr CrashBlock ;ブロックと弾丸の当たり判定 jsr BulletPositionConvert ;弾丸の座標をタイル番号に変換 __ここでNMI有効にせよ__ NMIEnd: rti http://echo.5ch.net/test/read.cgi/gamedev/1214210285/945
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.029s