どうも、めいき~です。(´・ω・`)
※なんのこっちゃ判らんという人はそのまま閉じて頂いて_(:3 」∠)_
まず、スペック。
スーファミ
メインCPU:リコー5A22s-cpu(65c816ベース)
クロックレート:NTSC2,684658‐3,579545MHz(パルは別)
データバス幅:内部16、外部8(ビット)
レジスター4*16、4*8ビットレジスタ
命令セット8,16ビット
一秒当たりの命令数1,125~1,5mips(NTSC)
1,114738~1,486318MIPS(PAL)
算術論理ユニットALU:16ビット
メガドライブ
メインCPU:モトローラ68000
クロックレート:7,670454Mhz(パルは別)
データバス幅:内部32、外部16(ビット)※単語の長さはどっちも16
レジスター16*32ビットレジスタ
命令セット16、32ビット
一秒当たりの命令数1,342329mips(NTSC)
1,330085mips(PAL)
算術論理ユニット16ビットデータALU、32ビットアドレスALU(2*16ビットALU)
所が作業用RAMはというと
スーファミ128kbDRAM メガドライブ64kbPSRAM
であり、メガドライブの帯域幅10,526314MB/秒。
なのでメガドライブは3Dポリゴンジオメトリ計算処理が四倍?位性能が高い為にソニックヘッジホックみたいなゲームが処理できたわけです。(若い子はお父さんかお母さんかネットで動画でも見て頂戴)
対して、CPUに対しメモリがショボいので「頭は早くて作業机はちゃぶ台の半分」的なイメージですねメガドライブ。
ん?でもスーファミでもポリゴンゲームでスゲーのあったじゃんとか思ったそこのアナタ。あれは、拡張チップ搭載してごまかしてたんだよ。(´・ω・`)
※もしくは、謎技術で押し込んだメーカーもあったけどそういうとこのは移植の時に鼻血と眼血が噴水みたいにでるよ。(例えば、イースの旧作サウンド周りだけで複数あってフォー!みたいな声がでる(でた))この話はスーファミとかメガドライブとは一切関係ないPCの頃の話何でナシで。
本体の能力ではどうにもならん場合とかファミコンでもデカいカセットとかあったでしょうよ。もっとレトロなゲーム機界隈では、結構メジャーな解決方法だったぽよ。これ、何がイヤかってカセットにコストがかかるの。
ちなみに、スーファミは設計が優れててCPUの介入なしにデータを移動できる二つのDMA(ダイレクトメモリアクセス)があってね。
スーファミってメーカーどころかソフトごとにサウンドセットがあって500種類以上あった記憶ががが。
まぁそれはどうでもいいわい。
ハード的にはサウンドCPU⇔サウンドDSP⇔64kサウンドRAMみたいな繋がりかたしててサウンドCPUとPPU1,2にはCpu-data-busで繋がってます。
※拡張端子もメインCPUもcpu-data-bus経由で別経路にb-busがあってa-busはメインと128kbWEAMのみみたいなツリーじゃなかったかしらん。
こんな風になってるので、メモリ領域に二つの異なるアドレスバスがあるんですよね。ppuって何ぞやと思った方は今のGPUのショボいのだと思ってくれ(; ・`д・´)b
脱線だが、画像処理でファミコンだと縦240本のラインを一本づつ描く。
そん時に、VRAMに書かれたアドレスとCPUが持ってる情報でカセットから直接画像とスプライト持ってくる訳です。(このスプライトも沢山持ってこれなくて16ドットが四つ位のモヤシ君だった)
映像はカセット直のファミコンから
カセット>VRAM>映像(つまり最初に比較を出したメガドライブと一緒)
これによって、画像処理はVRAMにしか行けなくなったぽよ。
てなわけで、格ゲーとかではフレーム単位で画像を読む必要が出てくるのです。んで、このVRAM転送速度にも穴がございましてですねw。
カタログ値と実際に出る値がちゃいまんねん。メガドライブなんて理論値の6割位しか出てへんでどないやんとかなる訳です。(レトロゲームプログラムの話をする時に画像処理、音楽処理とか話が出やすいのはこの辺で絶望する戦士たちが多かったという事でもありますぅぅぅぅ(叫
これねー例えばさ、画像って60fps基準だとしましょう判りやすくね。
そうすると、割らなきゃならんのですよw。
そう、一フレームに使える画像データ量をそれで割り出すとスーファミは4~6k秒になるの想像できますでしょうか?すっくなw
メガドライブなんてあれだけスペックパワフルなのに6~7kbフレームしか無いんですよ。
思い出して欲しい標準の解像度ってスーファミは256×224で16色にするとイメージは46kbになるんですよ。(あるぇってなりません?。私はなりました。
じゃどうすんのさ!←マジこれ
移植とかの時はキャラのfpsだけ下げちゃうとかやるんですよ。そうすると、利用率内に納める事が出来ました。(あくまで一例です)
ファミコンだと全てスプライトは16×16だけどメガドライブは結構豊富なスプライトもってて、スーファミはスプライトに関しては種類を持っていないので見掛け倒しでした。(==)
スプライトの素晴らしさを理解する為には、メガドライブ版のバットマンとロビンの冒険の動画を漁ってみて下さい。(口から魂が飛んでくほど素晴らしいですハイ。なんで、動画漁れって?それは日本未発売のゲームだったからダッシュ。探せば、オクとか中古品とかにはあるかもわからん。
スーファミのアクスレイですが、画面をスキャンしながら同期する方法でスクロール値を変更するという恐ろしい事をやってます。ただ、これができるとハードウェア垂直スクロールを備えた全てのPC、ゲーム機で実行できるというとてつもないメリットがあります。
メガドライブはスプライトの形式を制御できるので結構柔軟ですが、スーファミはスプライトの形式を殆ど制御出来ないんですね。
他にも低いビットレートにしたり(質を落とす)高い音をゆっくり再生したり。音を分離してごまかしたり、削減する為に色んなことをやらないとはいらないよママンという様な時代だった訳です。(今は今で別のエグイ要素があるけどね)だからこそFM音源で出来た事が出来へんわけだが、そうするとアクトレイザーが如何にぶっ飛んだ音だしてるか判ると思う。(これに関してだけはスーファミを知り尽くした任天堂のマリオ4の容量削減も大概だがそれをも外部の技術者が越えていった証でもあります)
※私はスーファミのアクトレイザーをやった時しばらく口から牛乳零しながらコントローラーを置いて曲聞いてました。
まぁ古いゲーム機の話ですが、読んで頂けたら幸いです。
この絶望を超えていく為に、この時代にはサウンドや画像描写に様々なテクニックが入っていたというお話でした。(ファミコンより前のPC98とかMSXなんかも転送速度や容量と戦う歴史だったんですよね。
それでは~(/・ω・)/