アカウント名:
パスワード:
元サードパーティーのプログラマのチラ裏です。記憶にたよってるので細かい間違いはご容赦を。
ネオジオは、グラフィックが16×512ドットサイズのスプライト(LSP Line SPlite)しかないという変態ハードでした。このスプライトを敷き詰めて背景にしたり、いくつか横にくっつけてキャラにしたりするわけです。(画面は320×240(NTSC)で仮想画面512×512、LSPの上下はループ)
しかもスプライトに置くキャラクタの書き換えはI/O経由(MMI/Oだったかも)で、キャラROMの単位である16×16のキャラクタを一つ書き込んだら次のキャラを書き込むまで12clockの待ちが要る…という素敵仕様でした。まと
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ見習い
ゲームのプログラムをのぞくと・・・ (スコア:3, 興味深い)
あと派手なゲームほど、かなり内部では高度なリソース管理をしていてびっくり。
NEOGEOの表現力の半分は当時のプログラマ等の努力と言えるんではないでしょうか。
Re: (スコア:4, 興味深い)
元サードパーティーのプログラマのチラ裏です。
記憶にたよってるので細かい間違いはご容赦を。
ネオジオは、グラフィックが16×512ドットサイズの
スプライト(LSP Line SPlite)しかないという変態ハードでした。
このスプライトを敷き詰めて背景にしたり、いくつか横にくっつけて
キャラにしたりするわけです。
(画面は320×240(NTSC)で仮想画面512×512、LSPの上下はループ)
しかもスプライトに置くキャラクタの書き換えは
I/O経由(MMI/Oだったかも)で、キャラROMの単位である16×16の
キャラクタを一つ書き込んだら次のキャラを書き込むまで12clockの
待ちが要る…という素敵仕様でした。
まと
Re: (スコア:2)
MMI/OでのVDPへのアクセスですね。
>キャラクタを一つ書き込んだら次のキャラを書き込むまで12clockの待ちが要る…という素敵仕様でした。
物によっては、LSPがGROMの何処を参照するかを先に必要なだけ先にVRAMに書き込んでおいて
それらのLSPをパラパラマンガ方式で、ダブルバッファリングみたいな感じで切り替えてましたね。
(位置を書き換えるだけなら書き換え量が少ないので)
ライン割り込みでのスプライトダブラーみたいなのは、まだ見た事は無いですが
速度的に相当厳しそうに思いました。
Re:ゲームのプログラムをのぞくと・・・ (スコア:0)
処理遅れ時には vsync 非同期にして
処理遅れをあまり感じさせない作りにしたよ~