とわ君に独り言2(痛)

MSXやエレキギターが好きなおっさんの戯言。妻が白血病で亡くなり、3人の子供達と暮らしてます。昔のブログ→id:TOWA0104

■スプライトダブラー手抜き代替案考察■MSX BASIC入門 ゲーム制作〜番外編〜

※2023/2/2追記※考察と言える程ではありません…。

本題
■BASICでは遅くて使えないので、スプライトダブラー以外でスプライト(以降キャラと表記)が極力消えない、又は違和感軽減出来そうな方法を考えます■

※スプライトダブラーとは、ファミコンドラクエのように、キャラの表示優先順位をコロコロ変え横方向のキャラ表示性能以上に並んでも、完全に消えたままにしないようにチラチラ表示する方法
(他にも画面上で使った物を下方で再利用する物や、コナミ式とか複数方法があったらしい)


●2つ以上のキャラを重ねて1キャラにする時に、横方向に重ならないようなデザインにする。(市販ソフトでも見かける方法)


●消えてもゲーム性が落ちないキャラの表示優先順位を下げる。
(例えば自キャラが1色で影キャラを重ねていたら、影のキャラの表示優先順位を下げる)
2枚以上スプライトを使っているキャラは、ドット数が少ない方(又は色が目立たない方)の優先順位を下げる

●チラついても違和感ないキャラを最初からチラつかせておく。
チラつかせるキャラの表示優先順位を下げておき、メインルーチン等でY座標を208にする方法を使えば簡単に複数チラチラが可能。(これも市販ソフトで見かけます。例えば弾等の動く飛び道具をチラチラ)

●なるべく4つ(MSX2以降なら8つ)以上キャラが横に重ならぬよう工夫する。
・横方向に直進するキャラを減らし、縦方向の速度を極力同じにしない。
・縦方向に同時に左右に現れ落ちてくるキャラ等はタイミングをずらし、極力被らぬようにする。

●8ドット移動でも構わないキャラにPCG(背景画)を使う。
(グラディウスシリーズが使っている方法ですよね)



他にもあったら教えて、エロい手練プログラマーさん達ぃ🙏
※2023/3追記
◆と、嘆いていたらHRA!さんが1つの方法をアップしてくれていました、BASICでは厳しいけどありがたや〜◆
https://github.com/hra1129/msx_documents/blob/main/vdp/sprite_sample/sprite.pdf

※他にも色々見落としてると思うので、引き続き考えます。
■そして、時折加筆修正します。■