デュアルプロセッサの迷宮:セガサターン複雑怪奇なハードウェア設計がもたらした悲劇
8基の専用プロセッサ、三角形ではなく四角形のポリゴン、そして90年代中頃のプログラマーたちの悪夢。セガのエンジニアリングにおける傑作が、なぜ開発者にとっての難攻不落の要塞となってしまったのかを詳細に紐解く。
ファクトボックス:セガサターン技術仕様
サブシステム
コンポーネントおよび仕様
中央CPU
日立製 2× SH-2 @ 28.6 MHz(32ビットRISCプロセッサ、各約25 MIPS)
グラフィックサブシステム
VDP1:スプライト描画、ポリゴン(四角形)、塗りつぶし、3Dジオメトリ。VDP2:独立した4つの2D背景プレーン、ハードウェアによる地平線および透明度の計算
サウンドプロセッサ
モトローラ 68EC000 @ 11.3 MHz + SCSP(セガカスタムサウンドプロセッサ / ヤマハ YMF292、32チャンネル)
補助コントローラー
SCU(システムコントロールユニット / DSP)、CD-ROM MCU(日立 SH-1)
合計RAM
2 MB ワークRAM(1 MB ハイRAM + 1 MB ローRAM)+ 1.5 MB VRAM + 512 KB サウンドRAM
バスバンド幅
ピーク 28.6 MB/s
01. ソニーの反撃:発売直前におけるパニック駆動のアーキテクチャ再設計
1990年代初頭、セガはその全盛期にあった。北米とヨーロッパにおける「メガドライブ(海外名Genesis)」の圧倒的な市場支配力は、経営陣に明日への絶大な自信を与えました。佐藤秀樹率いるハードウェア開発部門は、「プロジェクト・ギガドライブ」というコードネームで次世代プラットフォームの開発を開始し、それが後にセガサターンへと進化していくことになります。
オリジナルのサターンプロジェクトは、2Dグラフィックスの絶対王者となるよう設計されていた。エンジニアたちはセガの豊かなアーケードゲームの遺産からインスピレーションを受け、3Dグラフィックスは当分の間ニッチなアトラクションにとどまると考えていた。このコンソールは、数百のスプライト、深いカラーパレット、そして多重スクロールを完璧に処理できるように設計されていたのだ。
しかし、1993年秋の「第5回シャシンカイ(次世代機展示会)」で地殻変動が起きた。ソニーが一般公開およびパートナー向けに、次世代機「PlayStation」の技術デモを突如として披露したのだ。Tレックスの頭部やレーシングシミュレーターを用いたリアルタイムのインタラクティブ3Dデモは、セガの経営陣に衝撃を与えた。LSIロジックとの協力で開発されたソニーPlayStationのチップは、1秒あたり数十万のシェーディングおよびテクスチャ付き三角形を難なく計算できることが判明したのである。
3D時代の幕開けにおいて、現在のサターンのデザインでは競合に敗北すると悟ったセガ経営陣は、緊急のアーキテクチャ見直しを命じた。しかし、ゼロから全く新しいグラフィックプロセッサを設計する時間はもはや残されていなかった。そこで下された運命的な決断が、2基目の日立製SH-2中央演算処理装置をアーキテクチャに追加し、グラフィックとジオメトリの計算を並列化しようという試みであった。
この急ごしらえの結果、システムには統一されたキャッシュコヒーレントバスが欠如することになった。2基目のプロセッサは既存のインフラに文字通り「並列でハンダ付け」され、サターンのマザーボードは共有メモリへのアクセス権を奪い合う8つのマイクロチップによる混沌とした迷宮へと変貌したのだ。
02. 2基のSH-2とVDP1/VDP2ビデオチップ:2Dの天才 vs 避けられなかった3D
セガサターンの複雑さを理解するには、そのチップセットの構成を見るだけで十分である。コンソールのマザーボードには以下が搭載されていた:
• Master CPU: Hitachi SH-2 (Main logic, geometry)
• Slave CPU: Hitachi SH-2 (Auxiliary computations)
• VDP1: Geometry, sprite, and quad video processor
• VDP2: Background planes and special effects video processor
• SCU: System Control Unit with built-in DSP
• Sound CPU: Motorola 68EC000
• SCSP: Yamaha YMF292 sound chip
• CD-ROM Controller: Hitachi SH-1

役割分担:VDP1とVDP2
グラフィックシステムは、高度に特化した2つのプロセッサに分割されていた:
• VDP1 handled object rendering: characters, vehicles, and environmental elements. It worked with sprites and polygons, calculating transforms, texture mapping, and simple shading effects.
• VDP2 was a monstrous 2D co-processor. It could simultaneously output up to four independent scrolling background layers at resolutions up to 704×480 pixels, perform hardware floor and sky plane rotation, and compute heat haze and transparency effects.
開発者たちが両方のチップを適切に組み合わせる方法を習得したとき(『バーチャファイター2』や『セガラリーチャンピオンシップ』におけるAM2のように)、サターンは圧倒的なビジュアルクオリティを実現した。VDP2がCPUリソースを消費することなく地平線、コース、空の描画を完全に担当し、VDP1はその全パワーを高精細な3D格闘家や車のモデルの描画に集中させることができたのだ。

メモリとバスのボトルネック
システムの最大の欠陥は、その断片化されたRAM構造にあった。単一の均一なRAMプールを持つ代わりに、サターンには以下のような構成が存在した:
• 1 MB High-speed Work RAM (32-bit bus)
• 1 MB Low-speed Work RAM (16-bit bus)
• 512 KB Framebuffer VRAM for VDP1
• 512 KB Texture VRAM for VDP1
• 512 KB Background VRAM for VDP2
両方のSH-2プロセッサが同時に同じメモリ領域にアクセスしようとすると、ハードウェアのバス競合が発生し、CPUの片方がウェイト状態で単にフリーズすることになった。アセンブリ言語と緻密なクロック同期がなければ、2基目のSH-2はしばしばアイドル状態になり、無駄なサイクルを実行し、あるいはメインCPUの邪魔をすることさえあった。
03. 四角形 vs 三角形:PS1からの移植が地獄だった理由
3Dグラフィックス業界は、事実上の標準である「三角形のグリッド(三角形ポリゴン)」の上に築かれていた。三角形は、空間内の3つの点によって定義される最も単純な平坦な幾何学図形である。PlayStation、NINTENDO 64、およびPCのグラフィックアクセラレータ(3dfx Voodoo、Direct3D、OpenGL)は、もともと三角形を扱うように設計されていた。
セガサターンは世界全体に逆行した。そのVDP1グラフィックチップは三角形をラスタライズできなかったのだ。サターンの基本プリミティブは歪んだ四角形(Quad)、本質的には変形可能なテクスチャ付きスプライトであった。

描画パラメータ
ソニー PlayStation(三角形)
セガサターン(四角形)
基本プリミティブ
三角形(3つの頂点)
四角形 / クアッド(4つの頂点)
ポリゴンの縫い合わせ
正確なエッジの整合性
隙間や穴の発生リスク
遠近法補正
ハードウェアアフィン・テクスチャマッピング
4点にわたるスプライトの変形
異種フォーマットの模倣
ネイティブな業界標準
「退化型」四角形(2つの重なり合う点)が必要
マルチプラットフォーム移植の問題点:
• Lack of Hardware Stitching (Gaps & Overlapping): When attempting to build a complex 3D model out of quads, rotating the camera inevitably caused quad vertices to separate, forming visible gaps and holes through which the background peeked.
• Zero Coordinates: To draw a triangle on the Saturn, programmers had to define a quadrilateral where two vertices overlapped at the same point. VDP1 wasted resources processing the degenerate edge, lowering rendering performance.
• Texture Distortion: Trying to wrap a 2D texture onto a deformed quad without perspective correction resulted in warped, "wobbly" textures.
• Engine Rewriting: Major publishers (including EA, Capcom, and Konami) refused to rewrite their game geometry for quads. Simple ports from PlayStation to Saturn shipped with terrible frame rates, missing effects, and graphical glitches.
04. 鈴木裕と『シェンムー』:サターンから不可能を絞り出す方法
アーキテクチャの地獄にもかかわらず、伝説的なゲームデザイナー兼エンジニアである鈴木裕率いるセガの社内チームAM2は、真の技術的奇跡を起こした。
鈴木と彼のチームは、セガの不完全なコンパイラをバイパスして、アセンブリ言語で直接コードを書いた。彼らは2基のSH-2チップの間でタスクを手動で分散させる方法を習得した。1つのプロセッサはジオメトリと衝突判定の計算専用とし、もう1つはアニメーション、入力、AIロジックを担当させたのである。

サターン版『シェンムー』の伝説(プロジェクト・バークレー)
サターン向けで最も野心的なプロジェクトは、『シェンムー』(当時はコードネーム「プロジェクト・バークレー」として知られていた)の開発であった。AM2は、昼夜のサイクル、何百人ものユニークなNPC、そして詳細に描かれた古代中国を特徴とする、完全に動作する3DオープンワールドRPGを作り上げた。
数年後にセガサターン版『シェンムー』のプロトタイプの映像が浮上したとき、世間は度肝を抜かれた。真の3Dには不向きとされていたプラットフォームが、初期のドリームキャストやPlayStation 2のゲームに匹敵するグラフィックレベルを実現していたのだ!しかし、この成功の代償はあまりにも大きかった。このようなエンジンを作成するには何年もの歳月と何百万ドルもの資金が必要であり、それはセガの最高峰スタジオにしか成し得ない業であった。

総括
セガサターンは、工学思想における壮大かつ悲劇的なモニュメントとして歴史に名を残している。このコンソールはマルチコア処理に関して時代を先取りしていたが、開発ツールチェーンが黎明期にあった時代においてはあまりにも複雑すぎた。一般大衆には不当に忘れ去られたものの、サターンは世界に色褪せぬ傑作を贈り、ゲーム業界全体に重要な教訓を教えてくれた。すなわち、バランスと開発の容易さは、生の、非直交的なパワーよりも常に重要であるということだ。



