見出し画像

グラフィック画面の進化

初期のパソコンはテキスト画面しか持たないものが多く、ゲームなどを楽しむためにはグラフィックキャラクターとも呼ばれる特殊な図形文字を組み合わせたり、自由に文字が定義できるPCGと呼ばれる機能であったりハードウェアの力を借りていました。

PC-8001で使われていたセミグラフィックも、あたかも1点ずつ制御しているようにも見えましたが、ハードウエア的には1文字を4✕2に分割したフォントをソフト的に処理することで160✕100のグラフィック画面を持っているかのように見せていました(そのため色は文字の単位で一緒になる)。

PC-8001 セミグラフィック

PC-8000シリーズ

セミグラフィックの利点は、多くのビデオメモリを必要とせず、描画をするにもテキストを書き込むだけでなので、高速に処理することができました。高速というのがゲームには大事なんですよね。APPLE][も40✕48しかないローレゾ・グラフィックに関してはこの方式です。

APPLE][のハイレゾ・グラフィックは280✕192の解像度があり、ハードウェアとしてはモノクロなのですが巧妙な方法で6色を使えるようにしていました。但しこれを実現するためにページあたり8Kものメモリを必要とし、テキスト画面を使いまわしているローレゾが1Kしか必要ではないので、画面が高解像度になったとはいえ8倍ものメモリを読み書きする必要があるわけです。まあ体感的にはBASICで間に合った処理がマシン語を使わないと耐えられなくなったくらいでしたけど。

PC-8801 - 8ビットの頂点

これがPC-8801などになると320✕200となり、これだけで16Kものメモリが必要となるのですが、これはモノクロの場合で8色を表現するためには、この3倍のメモリが必要となります(48K)。こうなると8ビットCPUのアドレス空間の大部分を占めることとなり、単なるメモリアクセスだけではなくバンク切り替えなどの手間も必要となりますし、ちょっとした絵を描くだけでも大仕事になってきます。

色数と VRAM 構造

そうなってくると、今までのようにひとつひとつ点を打って線を引いているのでは手間がかかりすぎてしまうので、あらかじめ用意したデータを直接メモリに書き込むことで画面を作ってしまいたくなります。この時代は漢字を表示しようとすればグラフック画面にフォントデータを使って文字を表示していたのですから、表示すべきデータをどこからかコピーしてくることで済ませるのが普通になっていきます。

またビデオメモリにデータを書き込むのではなく。スプライトという特別な表示機能を使って画面上の自由な位置にあらかじめ用意された画面をはめ込むこともできるようになりました。こうして点と線の世界からラスターオペレーションと言ったデータの塊(ブロック)を画面に出す方法が一般的になっていきます。

ヘッダ画像は、以下のものを使わせていただきました。https://www.irasutoya.com/2019/08/blog-post_70.html

#グラフィック画面 #セミグラフィック #ビデオメモリ #PCG #VRAM  

いいなと思ったら応援しよう!

kzn
頂いたチップは記事を書くための資料を揃えるために使わせていただきます!