Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】How did retro consoles handle graphics before modern GPUs?

2026年10月05日に「Engadget」が公開したITニュース「How did retro consoles handle graphics before modern GPUs?」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

現代のGPUがない時代、レトロゲーム機はグラフィックチップで画面を描画していた。しかし、当時は描画機能のみで高度な演算はできず、Xboxの登場でこの状況が変化した。

ITニュース解説

現代のゲーム機やパソコンで美しい映像が当たり前のように見られるのは、グラフィックス処理装置、通称GPUのおかげである。GPUは画面上のピクセルの一つ一つを計算し、光の当たり具合や影の形、物体の動きなど、複雑な視覚表現をリアルタイムで作り出している。しかし、かつてのレトロゲーム機には、そのような高性能なGPUは存在しなかった。では、現代のGPUなしに、どのようにしてゲーム画面は描画されていたのだろうか。

レトロゲーム機の時代、グラフィックスの処理は主に中央演算処理装置、つまりCPUが担っていた。CPUはゲームのルールやキャラクターの動きといったロジック全体を制御するだけでなく、画面に表示する画像データの計算も行っていたのだ。しかし、CPUの処理能力には限界があり、複雑なグラフィックスをすべてCPUで処理すると、ゲーム全体の動作が重くなってしまう。そこで、CPUの負担を軽減し、より効率的にグラフィックスを描画するための様々な工夫が凝らされた。

初期のゲーム機は主に2Dグラフィックスで構成されていた。2Dグラフィックスの基本となるのが「スプライト」と呼ばれる技術だ。スプライトは、あらかじめメモリに保存された小さな画像データのことで、キャラクターやアイテム、弾丸など、ゲーム内で動くオブジェクトの描画によく使われた。CPUは、これらのスプライトを画面上のどこに、どんな色で表示するかという指示をグラフィックス処理を専門とする専用チップに送る。専用チップは、その指示に従ってスプライトを画面に配置する役割を担った。これにより、CPUは画像データそのものの描画処理から解放され、ゲームのロジックに集中することができた。

背景の描画には「タイル」という技術が用いられた。タイルとは、同じく小さな正方形の画像データのことで、これをグリッド状に並べることで広大な背景を構成する。例えば、森の地面は草のタイル、壁はレンガのタイルといった具合だ。同じタイルを繰り返し使うことで、必要な画像データの総量を大幅に削減し、限られたメモリ容量で多様な背景を表現することが可能になった。キャラクターが移動する際には、背景のタイル全体を横や縦にずらすことで、世界が動いているような錯覚を生み出す「スクロール」が実現された。さらに、複数の背景レイヤーを異なる速度でスクロールさせることで、遠近感のある「パララックススクロール」も実現され、奥行きのある表現が可能になった。

色表現に関しても工夫があった。当時のゲーム機は限られたメモリしか持たず、ピクセルごとに豊富な色情報を持たせることは難しかった。そこで「パレット」という技術が活用された。これは、あらかじめ使える色のリスト(パレット)を定義しておき、各ピクセルはそのリストの中のどの色を使うか、という「色の番号(インデックス)」だけを持つ方式だ。例えば、パレットに「赤」「青」「緑」が登録されていれば、ピクセルは「パレットの1番の色を使う」という情報だけを持てばよい。これにより、メモリの使用量を抑えながらも、ある程度の色彩表現を可能にしていた。ゲームシーンに応じてパレットを切り替えることで、同じグラフィックデータでも異なる雰囲気を演出することもできた。

ゲーム機が進化し、より複雑な表現が求められるようになると、3Dグラフィックスへの挑戦が始まった。3Dグラフィックスの基本は「ポリゴン」と呼ばれる多角形、主に三角形を組み合わせて物体を表現することだ。これらのポリゴンを計算し、画面に描画する処理は非常に重く、初期の3DゲームではCPUがその大部分を処理していた。ポリゴンに色を塗ったり、模様を貼り付けたりする「テクスチャマッピング」といった技術も登場したが、これもまたCPUに大きな負担をかけた。光の当たり具合や影の計算は、ほとんどがCPUで行われるか、事前に計算された結果を画像データとして貼り付ける方式だったため、現代のようなリアルタイムでの複雑な光の表現は望むべくもなかった。

このように、レトロゲーム機時代のグラフィックス処理を担っていた専用チップは、現代のGPUとはその性質が大きく異なっていた。それらのチップは、CPUからの指示を受けてスプライトを配置したり、タイルを並べたり、ポリゴンを画面上のピクセルに変換(ラスタライズ)したりといった、特定の「描画」タスクに特化していた。つまり、決まった命令に従って画像を画面に出力することはできたが、ピクセル一つ一つに対して複雑な計算を実行したり、ゲームのロジックの一部を処理したりするような、汎用的な「計算」能力は持っていなかったのだ。

グラフィックスチップが「描画」だけでなく「計算」も担うようになる大きな転換点の一つが、2001年に登場したMicrosoftのゲーム機「Xbox」だった。Xboxに搭載されたGPUは、単に画像を画面に描画するだけでなく、ピクセルや頂点に対してプログラム可能な「シェーダー」と呼ばれる処理を実行する能力を持っていた。これにより、光の反射、物質の表面の質感、影の付き方といった、非常に複雑なグラフィックスの計算をGPU自身が行うことができるようになったのだ。CPUはゲームの主要なロジック処理に集中し、GPUは視覚表現に関するあらゆる計算と描画を一手に引き受けるという、現代のゲーム機の基本的な役割分担が確立された。

レトロゲーム機は、限られたハードウェア資源の中で、いかに効率的に、そして魅力的にゲームの世界を表現するかという課題に、多くの創意工夫で応えてきた。スプライト、タイル、パレットといった技術は、現代のゲーム開発においても低レベルな描画処理の概念として、あるいは特定のスタイルを表現する手段として、その思想が受け継がれている部分もある。現代の高性能なGPUが実現する驚くべきグラフィックスは、こうした先人たちの技術と努力の上に成り立っているのだ。システムエンジニアとして、未来のシステムを構築する際には、過去の制約の中で生まれた工夫やその根底にある思想を理解することが、新たな技術を創造する上で重要な視点となるだろう。

関連コンテンツ