2001年
NINTENDO GameCube
2001年
NINTENDO GameCube
それはNINTENDO 64の失敗体験から生まれた
発売後5ヵ月間で300万台を売り切ったプレイステーション(PS)2。対する任天堂。このまま家庭用ゲーム機の市場を独占させまいと、次世代機「ゲームキューブ」を発売1年前にして公開した。先行するPS2を追撃するために目指したのは、より多くのゲーム開発者の意欲をそそるゲーム機の実現。このためにNINTENDO 64で学んだ苦い経験を生かした。さらには若年層をターゲットとし、PS2との直接競合を回避する。
生き馬の目を抜くゲーム機業界。たった一度の失敗が、長年確保していたシェアをあっさりライバル・メーカに奪われる結果を招く。しかもいったん失ったシェアを取り戻すことは容易ではない。このことを身にしみて感じているのが任天堂だろう。それまでゲーム業界のガリバーとして君臨していた同社は1996年6月、満を持して家庭用ゲーム機「NINTENDO 64」を投入する。ところがこれが不発に終わる。国内出荷台数は、大ヒットとなった前機種「スーパーファミコン」の1/3以下にとどまり、このことが「プレイステーション」を擁するソニー・コンピュータエンタテインメント(SCE)の躍進を助長した。
その任天堂が、かつてのトップ・シェアを奪い返すべく動き出した。その切り札が2001年7月に発売を予定する次世代機「ゲームキューブ」である。この機種が再び不発に終われば、家庭用ゲーム機市場における任天堂の影響力が大きく損なわれることになるだろう。失敗は許されない。
好循環を自ら断つ
失地回復を目指す任天堂が、ゲームキューブの開発に当たってまず目指したのが、NINTENDO 64が不振に終わった原因を洗い出し、それを徹底的に解消することである。そのうえで、先行するプレイステーション2(以下、PS2)との直接競合を避ける戦略を採った。
NINTENDO 64の不振には理由があった。ゲーム・タイトルの開発者に「あれは技術者のエゴで作ったマシン」と酷評され、総スカンを食ったのだ。このために任天堂は、ゲーム機市場における「必勝パターン」を逃してしまった。この結果ははっきりと数字に表れている。発売直後の1996年度は204万台とまずまずの国内出荷を記録したにもかかわらず、発売されたゲーム・タイトルの種類は15本にとどまった。この伸び悩みが、やがては出荷台数の伸び悩みにつながっていく。
ゲーム機の分野では、ある程度のと台数を売り切れば、あとは自然に出荷台数が増えていくことが期待できる。出荷台数が多いゲーム機にはより多くのゲーム・タイトルが発売され、それが新しい需要を喚起するからだ。ところがNINTENDO 64の場合、ゲーム・タイトルが増えないという問題故に、このポジティブ・フィードバックのループに乗れなかった。
「グラフィックス・ワークステーションの機能をそのまま1チップに収めた結果、ソフトウェア開発者に多大な労力を要求するゲーム機になってしまった」ことが、ゲーム・タイトルの種類が増えなかった原因の一つであることを任天堂取締役 総合開発本部長の竹田玄洋氏も認めている。
思い通りに動くゲーム機目指す
ソフトウェア開発の負担を軽減するため任天堂が目指したのは、「開発者が思ったことを素直に表現できるゲーム機」(竹田氏)の実現である。
NINTENDO 64は「実際にプログラムを書いてみないと、その動きを画面で表現できるかどうかわからないシロモノだった」(NINTENDO 64が搭載するグラフィックスLSIの設計に携わった米ArtX, Inc. Fellow Tim Van Hook氏)。問題が発生することのわかったプログラムをなんとか動かすために、ソフトウェア開発者が細かい最適化作業に追われたことが、負担の増加につながったという。
こうした課題を克服することをねらって、ゲームキューブには米MoSys Inc.が開発した「1T-SRAM」と呼ぶ高速メモリ技術を採用した。「メモリのボトル・ネックが諸悪の根源」(竹田氏)と分析したためである。このほか3次元グラフィックスを描画する際のデータ転送方式に工夫を施した。
若年層をターゲットに
もっとも、こうした対策を施しただけでは十分とはいえない。NINTENDO 64を発売した当時とは状況がまったく違うからである。いま現在、ゲーム業界で飛ぶ鳥を落とす勢いをみせているのは任天堂ではなくSCE。いやが応でもPS2の存在を意識せざるを得ない。すでに、家庭には数百万台のPS2が普及しているのだ。
こうした状況下、任天堂が採った戦略は、若年層を主なターゲットとした製品コンセプトを打ち出すことだった。PS2を購入するユーザの平均年齢は、プレイステーションに比べて着実に上がっている。PS2がまだ浸透していない若年層をねらえば、後発といえども出荷台数で挽回できるという読みだ。そもそも任天堂は、いまだ衰えぬ「ピカチュウ」ブームを見ればわかるように、若年層からの圧倒的な支持を保っている。この強みを生かさぬ手はない。
「取っ手」をつける
PS2とのターゲット層の違いを象徴しているのが、本体のデザインである。黒を基調としたPS2が据置型のAV機器を思わせるのに対し、15cm角程度の立方体に近いゲームキューブのデザインは「おもちゃ」というイメージに近い。本体に持ち運ぶための取っ手を付けたのも、据置を想定したPS2とは対照的だ。「普段は部屋の片隅に片付けておき、遊びたいときだけテレビ受像機につなぐ利用形態を意識した」(竹田氏)。
PS2が備えるDVDプレーヤとしての機能をあえて搭載しなかった点も若年層を想定してのことである。ゲームキューブに採用した記録媒体は、物理フォーマットこそDVD規格をベースにしているものの、直径は8cmと12cmのDVD-Videoよりもひと回り小さい。「われわれが想定する若年層は、映画を見る時間よりもゲームで遊ぶ時間のほうがずっと長い。こうしたユーザにDVD-Videoの再生機能は不要」(竹田氏)と考えた。ただし、記録容量は約1.5GバイトとDVD-ROMの1/3に減った。
コストにこだわる
ゲームキューブを若年層に受け入れてもらうには、子供が自分の金で買える程度の価格設定をすることが大前提となる。現時点では任天堂はゲームキューブの価格を明らかにしていないが、「ゲーム機は、遊びたいゲーム・タイトルがあるから仕方なく買うもの。受け入れられる価格には限度がある」(竹田氏)と思い切った価格設定を匂わす。ゲームキューブの価格がPS2の発売当時の価格である3万9800円を下回るのは確実だろう。
ゲームキューブの仕様からは価格を抑えるための工夫の跡がうかがえる。たとえばDVD-Videoの再生機能を搭載しなかったのも、価格を抑える手段の一つとみられる。光ディスクの直径を8cmとしたことで、「スピンドル・モータやピックアップの制御回路で消費する電力を減らせる。これらがコストの低減につながる」(松下電器産業 AVC社 特別プロジェクト推進担当の倉橋章氏)。
任天堂がゲームキューブ向けに開発したLSIからもコスト低減に向けたこだわりが感じられる。メモリを除く主要な回路をマイクロプロセサとグラフィックスLSIから成る2個のチップ・セットで構成している。PS2では同様の回路に4個のLSIを使っている。
第2部 最大性能より実効性能 開発者の負担削減ねらう
「最大性能ではなく実効性能を高める」。これがゲーム開発者の負担削減をねらう任天堂の開発方針だ。NINTENDO 64で学んだ経験を踏まえ、実効性能向上のカギと判断したのは、高速メモリの採用。実績の乏しい「1T-SRAM」の採用にあえて踏み切った。複雑なプログラム開発から制作者を開放するために、ジオメトリ描画回路のワイヤド論理化も進めた。
ゲーム・タイトルの開発にかかる負担をゲーム機側の工夫で減らすことができれば、増え続ける開発費にあえぐタイトル・メーカの賛同を得られる。これがゲームキューブでトップ・シェアの奪回をねらう任天堂の戦略だ。
このために、「ゲームキューブの開発に当たってはカタログ・スペックにすぎない最大性能よりも、実効性能を高めることを重視した」(任天堂取締役 総合開発本部長の竹田玄洋氏)。実効性能が高ければ、ゲーム・タイトル開発者がプログラムの最適化にかける手間を大幅に省けると考えたためである。
こうした言葉を裏付けるように、任天堂はゲームキューブの3次元グラフィックス描画性能を、「実際のゲーム・ソフトを想定した場合に600万ポリゴン/秒~1200万ポリゴン/秒」と表現している。描画性能が「最大6600万ポリゴン/秒」の「プレイステーション2」(以下、PS2)や同じく「最大1.5億ポリゴン/秒」の「Xbox」に比べると、ともすれば消費者に大きく劣っていると誤解されかねない。それでもあえて実効性能だけを公表したのは、「実際にゲーム・タイトルを動かした際の見栄えで他社のゲーム機に挑む」という決意の表れだろう。
「当時はわかっていなかった」
実効性能を高めるために任天堂がまず目を向けたのは高速メモリの採用である。
任天堂は「NINTENDO 64」の主記憶に、最大データ転送速度が500Mバイト/秒と当時としては高速だったRambus仕様のDRAMを採用した。「当時は最大データ転送速度こそが大切だと思っていた」(竹田氏)からである。ところが、実際にNINTENDO 64で3次元グラフィックスを駆使したゲーム・タイトルを作ってみると、最大データ転送速度よりもランダム・アクセス時のレイテンシが重要であることがわかったという。どんなに最大データ転送速度が高くてもアクセスに時間がかかれば、リアルタイム性を要求される画面の描画が追いつかないことがあることを、経験的に理解したのだ。
ランダム・アクセスを重視
こうした経験を踏まえ、ゲームキューブには米MoSys, Inc.が開発した「1T-SRAM」と呼ぶ高速メモリを採用した。グラフィックスLSI「Flipper」に集積したほか、主記憶として搭載することも決めた。
MoSys社は従業員が数十人のベンチャー企業である。市場で目立った実績があるわけではない。加えて「競合他社に買収される可能性すらあった」(関係者)。こうしたリスクを冒してまで1T-SRAMを採用したことにも、高速メモリに対する思い入れが表れている。
1T-SRAMは、ランダム・アクセス時のレイテンシが5ns以下と短いうえ、どのデータにアクセスしてもレイテンシが一定という特徴を備える。DRAMセルを10数Kビット~100数Kビットの細かいバンク単位にまとめ、それぞれのバンクをキメ細かく制御することで高速アクセスを実現している。ランダム・アクセス時のレイテンシが数十nsと長く、同じページにアクセスする場合と異なるページにアクセスする場合で、レイテンシが異なる通常の汎用DRAMに比べて、「実効的な性能を高めやすい」(竹田氏)。
32アクセスを並列処理
Flipperにはフレーム・バッファ兼Zバッファ用に2.1Mバイト、テクスチャ・キャッシュ用に1Mバイトの1T-SRAMを集積した。製造はNECが担当する。
NECはFlipperの製造に向けて、論理LSI用プロセスをベースとしたDRAM混載技術を新たに開発した。一般的なDRAM混載LSIに使われるDRAM用プロセスに基づく技術は、メモリ・セルの面積を抑えるには有効だが、論理回路に関しては高速動作や集積度向上の点で不利と判断したためである。今回採用したプロセス技術は、工程数こそ通常の論理LSIに比べて2割程度増えるものの、動作周波数や集積度については同等という。
アクセス頻度が高いテクスチャ・キャッシュ用の1T-SRAMはフレーム・バッファ兼Zバッファ用よりもランダム・アクセス性能を高める必要があった。このため、バンクを512個と細かく分けた。「このうち最大32バンクに対して同時にアクセスできるように設計してある」(MoSys社 会長兼CEOのFu-Chieh Hsu氏)。高速性をそれほど必要としないフレーム・バッファ兼Zバッファは128バンクである。
主記憶には、専用に開発した96Mビットの1T-SRAMを2個使う。64ビットのデータ・バスを400MHzで動かすことで、PS2が備える2チャネルのDirect Rambusインタフェースと同じ3.2Gバイト/秒の最大データ転送速度を実現した。 ただし、外付けにした分、ランダム・アクセス時のレイテンシはFlipperに内蔵した1T-SRAMよりも遅くなった。それでも10ns以下と汎用DRAMに比べれば十分早い。
「オートマチック車」を提供
このほかにもゲーム・タイトルの開発効率を向上することをねらってグラフィックス・データの転送方式を工夫した。NINTENDO64では、ゲーム開発者が複雑なグラフィックス・データの転送を逐一意識しながらプログラムを記述する必要があった。これが不人気につながったという。「プログラム開発の煩雑さが、ゲーム開発者の創造性を制限していたことは認めざるを得ない」(米ArtX Inc. FellowのTim Van Hook氏)。
Flipperにはグラフィックス・データの転送をゲーム開発者があまり意識しなくていいように、ジオメトリ演算や光源計算などにワイヤード論理回路を採用した。「車にたとえればオートマチック車のようなもの」(Tim Van Hook氏)」NINTENDO64ではPS2と同様に汎用の演算器を使っていた。
ゲームキューブではグラフィックス・データの格納場所やジオメトリ変換に使うデータ、光源計算のためのパラメータを指定すれば、ワイヤード論理回路がデータ・フローを自動的に管理する。
256Kバイトのキャッシュ内蔵
ゲームキューブに搭載するマイクロプロセサ「Gekko」の設計に当たっても実行性能の向上を考慮している。
たとえばパソコンやワークステーション向けの高性能マイクロプロセサと同等の256Kバイトの2次キャッシュを集積した。大容量のキャッシュを組み込むことでヒット率が高まれば、主記憶へのアクセス頻度が減るため実行性能が高まる。
ただし大容量の2次キャッシュを用意しても、ストリーム処理をするグラフィックス・データを格納してしまうと、その効果が期待できない。こうした場合、同じデータを頻繁にアクセスすることは少ないからだ。不要なデータが2次キャッシュを占有することで、ヒット率が大幅に下がる恐れもある。このような事態を避けるために、グラフィックス・データを1次キャッシュに対して明示的に書き込める機能を用意した。このときは1次キャッシュの一部を内蔵RAMとして利用する。
NE 2000.10.9