スプライト 4本目
スプライトは、主にテレビゲームで用いられる、
画面上のキャラクタ(人物・物品等)など
小さな絵を高速に表示するための技術的な仕組みである。
(wikipediaより)
前スレ
スプライト 3本目
https://matsuri.5ch.net/test/read.cgi/i4004/1371439735/ >>290
横同時表示可能数以上に設定できるスプライト数がハードで対応してるスプライトダブラーそのものでは
スプライトとして物理的に配線されてるのは横同時表示可能数そのものなのだし
それ以上のスプライト数はスプライトダブラーで表示してもスプライト 数として確保されてても表示自体の違いは見えない >>300
そのりくつはおかしい
それだったら
MSXは最大4〜8枚まで(実際は32枚)
X68は最大32枚(実際は128枚)
になっちまう
むしろ
32枚を64枚に
128枚を256枚に
ならないと意味ないし 配線されてて直接表示可能な数が横に並べられる数として最大数なのはそのままだから
表示できないから横最大数を超えると消える
消えるが座標だけはハードとして確保して空きができたら表示して行くのだからスプライトダブラーと同じ事をハードでやってるって事 スプライトダブラーを行う時はVDPが参照しているスプライトアトリビュートの切り替えが必要だから
80枚のスプライトを仮に160枚として使おうとした時、画面上半分に160枚表示させるのは不可能
例えば縦の解像度が224だとしたら0番スプライトはY座標0~111の範囲と112~224に分けて表示する必要がある
ハードでやろうとしてもソフト側でそのことを意識する必要があって
その事を考慮しない場合は表示できずに消えるだけ
そう考えると>>300の言いたい事も分かる気がする
ハード側で横並び20枚制限が有ったとしてソフト側で25枚並べてしまったら
21枚目以降はデータとして存在するけどハードでは表示されないからねぇ
PCエンジンやメガドラの場合は枚数制限の他にドット数の制限もあるけど 水平の表示上限と総数制限は別種の上限ですよ
スプライトダブラーというのは表示【上限を超える】手段のことを示すわけで、水平制限を超えることは不可能なので(ローテーションは超えていない)
スプライト属性テーブルの数以上の表示が出来ないならばダブラーとは称せないのではないでしょうか
あらかじめ用意されたテーブルの数以内なら幾ら表示しても上限超えとはなりませんので
タイムパイロットのように機械的に属性テーブルを二重に使用できる特殊ケースを除くとハードウェアダブラーは存在しないのでは?
(ソフトウェアで行うような柔軟な調整を実装しようとするよりも、属性テーブルを増やすように再設計する方が手っ取り早いでしょうし) その属性テーブルを増やす事がハードウェアダブラーなのでは
最小な属性テーブルは水平最大数なのだから、それ以上の属性テーブルはハードウェアなダブラーと同じ事って 回路A、水平256ピクセル、テーブル数32
回路B(A改)、水平256ピクセル、テーブル数64
という2つのハードウェアがあったとして、回路Bは回路Aに対してダブラーを実装したと見做すってこと? ハードウェアダブラーを要求して、単に増やしたので対応したのではダブラーとは言えない別なハードウェアダブラーって何?って事 じゃないか、上で言うと256ピクセル以上表示可能な属性テーブルがあればダブラーとみなすということでいいのかな
いや、制限超えてないよこれ
実際の回路との比較でなく仮想的な回路、例えば
回路0、16x16ドット固定スプライトで水平16個、テーブル数16
という回路があったと想定して、
回路1、16x16ドット固定スプライトで水平16個、テーブル数64
という回路が実際にあったとしたら、仮想回路0に対して回路1がダブラーを実装しているとは言えるかもしれないが、実際の表現力に変化出るわけでもないので言葉遊びの域を出ないよね >>307
306 のように元の回路を改修してテーブル増やせば、元の回路に対してのダブラーとは言えなくもないかもね
308 のように元の回路がなく仮想的な回路に対して増やしてもダブラーとは言えないかな 294は回路に実装されたテーブルを機械的に再利用して実装テーブル数以上の表示を実現しているのでダブラーと言えると思う 294は追加の属性が固定のダブラー
308の回路1は任意の属性を指定できるダブラー