トップページ > ゲ製作技術 > 2018年01月19日 > VhnRMljT

書き込み順位&時間帯一覧

6 位/79 ID中時間01234567891011121314151617181920212223Total
書き込み数1000000000000100000000013



使用した名前一覧書き込んだスレッド一覧
名前は開発中のものです。
ファミコンのプログラム4

書き込みレス一覧

ファミコンのプログラム4
478 :名前は開発中のものです。[sage]:2018/01/19(金) 00:29:11.92 ID:VhnRMljT
ファミコンはBGとスプライトの優先順位の指定をスプライト側で設定しますが
これだとスプライトの下に表示したいBGキャラと
スプライトの上に表示したいBGキャラが隣接している場合で
スプライトがその両方にまたがっている場合に
スプライトの上に表示したいキャラに差し掛かった時点でスプライトの
優先表示を変えてしまうと、スプライトの下に表示したいBGキャラの部分でも
BGキャラが上に表示されてしまうと思いますが、どういう処理をすればいいですか?

色々とVDPの仕様を調べると、セガマークIIIなどは、優先順位のフラグをBG側が
持っているので、何も考えなくても思った通りの優先順位で表示されそうですが
ファミコンのようにスプライト側で優先順位を持っていると、優先順位が逆のBGに
スプライトがまたがっている場合、どうしたらいいか分かりません。
ファミコンのプログラム4
480 :名前は開発中のものです。[sage]:2018/01/19(金) 13:00:25.60 ID:VhnRMljT
>>479
ありがとうございます。そういった感じの解決法なんですね。
でも、なんだかスプライト側が優先順位のフラグを持っているのは
面倒な気もするのですが、スーファミでも変わらず同じ仕様のようですし
何かメリットがあるのですか?

BG側が優先順位のフラグを持っていれば、BGキャラを表示する時点で
フラグを設定する以外の事はしなくても済みますので、この方が便利で
合理的に感じます。
ところがスプライト側がフラグを持っている場合、スプライトキャラが移動するたびに
BGキャラとの重なりチェックをしなければならず、そのBGキャラがスプライトの上に
表示されるべきBGキャラならばフラグを設定し、そうでなければまたフラグを戻すといった
処理がキャラを移動するたびに発生します。しかも、上記のように
優先順位が逆のBGキャラをまたいでいる場合は、様々な工夫が必要です。
それにもかかわらず、スーファミでもこの仕様を継承したということは
この方法にもメリットがあるはずですが、さっぱり思いつきません。
ファミコンのプログラム4
483 :名前は開発中のものです。[sage]:2018/01/19(金) 23:52:01.21 ID:VhnRMljT
>>481
ファミコンはVRAMが2KBしかないので
よく考えたらそうですね、パレットですら4キャラで1つに
節約してるくらいですし。
何かソフトウェア技術的なメリットがあるのかと思って
ここ3か月くらいずっと考えてたんですけど、思いつかなかったもので
ここで聞いてみました。

>>482
スプライト側がフラグを持った方がいい場合もあるのですか?
自分はまったく思いつかないのですが・・・。
スプライト側がフラグを持つと、プログラマ側が色々な処理を
しなければならず面倒ですけど、BG側がフラグを持ってくれると
プログラマは何もしなくてよくてメリットしかないように思います。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。