後藤弘茂のWeekly海外ニュース

見えてきたMicrosoftの次世代Xbox戦略(2)




J Allard氏

 次世代Xboxをにらんだプログラミングフレームワーク「XNA」を発表したMicrosoft。ゲーム開発の世界に、Microsoft得意のフレームワークを持ち込むことで、どんな次世代ゲーム開発を目指しているのか。Microsoft社内で、XboxプラットフォームとXNAを担当するJ Allard氏(Corporate Vice President, Chief XNA Architect)に、XNAとXboxの今後を伺った。


●マルチ言語対応ランタイムかは未定

[Q] XNAの構造についてひとつ聞きたい。Windowsのプログラミングモデルでは、現在、マルチ言語対応のランタイムエンジン「Common Language Runtime(CLR)」を導入している。XNAは、似たような共通ランタイムエンジンで中間言語を走らせる仕組みを考えているのか。Java VM/CLRのようなランタイムを使えばプラットフォーム依存をなくすことができるが、効率はどうしても落ちる。ゲーム機では非常に難しい。

[Allard氏] それは本当にいい質問だ。我々は、デベロッパがクリエイティブな部分へとフォーカスできるように、プラットフォーム依存を取り去ろうとしている。問題は、どういった方法が(ゲームにとって)適切かだ。

 CLRのような解が、我々のリストのトップに来るのか中程に来るかはまだわからない。しかし、非常に多くの基本的な問題がある。だから、私はこの問題がリストのトップに来ると思っている。

 まず、議論する必要があるのは、どうやればJavaやC#などのハイレベルプログラミング言語をより効率的に統合できるのか。あるいは、スクリプティング言語インターフェイスの方が必要なのか。

 あなたはPDCに参加し続けて来たから、Webのスクリプティング言語の議論を覚えているだろう。あの時は、JavaScriptが出てきて、我々もVBScriptを出した。それから我々は「Active Scripting」でどんなスクリプト言語もプラグインできるようにした。XNAでも様々なアプローチが考えられる。

 もっとも、今のところ、あなたの質問への答えは定かでない。すぐに、(業界と)議論することになるだろう。

 実際、GDCでは、JavaやC#、さらに他のプログラミング言語についてもさまざまな話が出た。デベロッパの中には、彼ら自身のプログラミング言語を開発したところもある。例えば、「Jak and Daxter」を開発したNaughty DogのJason Rubin氏と昨日会ったが、彼らは独自にLISPのようなプログラミング言語を開発している。それは、彼らのアーキテクチャにフィットするものになってる。

[Q] XNAでは、ハードウェア依存を取り去ることを目的としている。しかし、一般的にはハードウェアを抽象化すればするほど、パフォーマンスは引き出しにくくなる。この問題はどうするのか。

[Allard氏] その指摘は重要だ。XNAでは、我々が常に信じるものについての戦略へのコミットメントを行なった。それは、ソフトウェアのパワーだ。

 今のXboxとWindows PCを見てみよう。Windows PCでは、抽象化は5世代のハードウェア--それも異なるベンダーから提供される--に渡って行なう必要がある。その抽象化は、かなりパフォーマンスには影響しているはずだが、測定は不可能だ。なぜならPCでは、CPUパワーはフリーだからだ。強力なCPU、膨大なメモリを積み、さらにバーチャルメモリ領域も使える。だから、ハードウェア資源は考慮する必要があまりない。また、ゲームの側も、18カ月前のやや古いスペックのPCも想定して妥協して開発をする。そのため、パフォーマンスのクリティカル度はそれほど高くない。

 一方、XboxはDirectXのための箱、“DirectXbox”だった。DirectXのために作られた、仕様が固定されたハードウェアだ。その上で、我々は(Windows PCと)同じプログラミングインターフェイスを使い、(Windowsと同様の)ソフトウェアによる抽象化を提供している。しかし、固定ハードウェアであるXboxのコードは、非常に薄くて高パフォーマンスだ。例えば、オリジナルのHaloでは我々はすべてを書いた。ネットワーキング、グラフィックス、ファイルシステム、メモリマネジャなどすべてのコードだ。しかし、それらのコードは全部合わせても、たったの720KB分だった。一方、Windowsでは同様のコードが10MBになる。固定ハードウェアではないからだ。

 我々は、ゲーム機ではパフォーマンスインパクトがもっとクリティカルであることを理解している。XNAでは、より抽象化を行なうためにより高いレベルのレイヤーが必要になるから、コードは720KB以上にはなるだろう。しかし、依然として非常に薄いレイヤーになる。

 あなた方の疑問は、XNAのソフトウェアパーツを使う時に、今と同程度かそれ以上のパフォーマンスを維持できるのかということだと思う。私は、答えはイエスだと思う。

●複雑化する次世代ゲーム機のOS

[Q] 今後のゲーム機では、ハードウェアはどんどん複雑になり、ネットワークが重要になり、そのために高度なOSが必要になると考えている。あなたは、開発フレームワークを発表したが、では、次世代ゲーム機のOSはどういった方向へ向かうのか。

[Allard氏] 次世代ゲーム機については、ほんのちょっとしか語っていない。だから、その質問には多くは語れないので短く答えよう(笑)。

 次世代ソフトウェアはずっと洗練されたものになると指摘するのは正しい。我々は、より洗練されたハードウェアの力を、ソフトウェアで引き出す必要がある。カスタマの期待も重要だ。ゲーマーはつなげたい、ボイスが欲しい、コミュニティが欲しいと、ネットワークアクティビティを求めるようになっている。だから、我々は、よりリッチなソフトウェアインフラを揃える必要がある。

 よいニュースは、我々にはすでに多くのOSとインフラがあることだ。これは我々にとって、じつに好機だと思う。実際には、この機会は、前世代(Xbox)で参入したときから気づいていた。そして、次世代ゲーム機では、今度は真にソフトウェアの戦いになると確信している。

 では前世代のXbox1は何だったのか? 我々には様々なものが必要だった。ブランド、チーム、経験、ゲームを作るストラクチャ、レッスン、(業界と様々な)関係も結ぶ必要があった。そして、……失敗も必要だった(笑)。そう、失敗から、学ぶ必要があった。それらは全て、ソフトウェアが大事だと業界が認識し始めた時に、その好機を利用できるようにするために必要だったことだ。

 我々にとって、Xbox1は、ステッピングポイントだった。基礎を固め、戦略を定め、さらに先へ進むための。もっともっと強みを活かして、もっともっと進み、もっともっと成功できる。そう私は願っている。

[Q] ソニーの久夛良木氏にインタビューをした。彼は、PlayStation 3ではコンピューティングのパラダイムを変えることを目的としていると語った。Cellコンピューティング、これは実態は分散コンピューティングのスキームだが、それによってネットワーク上のコンピュテーションのリソースを自在に利用できるようにする。こうした構想はどう評価するか。

[Allard氏] 非常に込み入った話に聞こえる(笑)。複雑なことにはソフトの力が必要だ。もしかすると、XNAは彼を助けられるかもしれない。彼が私と話がしたければ電話が欲しいな(笑)。

 あなたはコンピュータの歴史を追っているようだから、憶えていると思うが、私が大学生だった頃は、誰もが分散コンピューティングの話をしていた。我々は皆、分散コンピューティングのコンセプトはすぐに理解した。しかし、それをプログラムするのは信じられないほど難しかった。

 理論的観点から言えば、コンピュータがあってネットがあるなら、「よし! それを使おう」というのは自明の理のように聞こえる。「コードを交換して、データを交換して、結果を(元のコンピュータに)戻して、ふむ、簡単だ。これで簡単にコンピュータ群とネットワークからスーパーコンピュータができるぞ」とね(笑)。

 だから、膨大な金、精力、博士たち、特許、その他諸々が分散コンピューティングにつぎ込まれた。でも、その努力で、人がコンピュータを使う方法を実際に変えることはできなかった。Webが登場するまでは。

[Q] 確かに、Webの誕生で現実的な分散コンピューティングへと近づき始めた。

[Allard氏] Webは何をしたか。Webは、簡略なネーミングスキームや、世界で一番シンプルなプロトコルや、ものすごくシンプルなフォーマットから成っている。でも、これらを一緒にすると、ハイパーリンクによってユーザーにとって意味があるものになる。

 確かに、Webの要素はどれも新しくない。よく議論されるが、コンピュータ科学者から見れば、HTMLはひどい言語だし、HTTPは脆弱なプロトコルだし、URLは非常に限界のあるネーミングスキームだし、キャラクタセットのグローバリゼーションはひどいものだ。つまり、WWWのアーキテクチャをコンピュータ科学の目で見ると、グチャグチャで破滅的で失敗作に見える。ところが、過去30年間のコンピュータの歴史の中でこれが唯一もっとも成功したアーキテクチャだ。そして、Webはまさしく分散コンピューティングの具現化だ。

 では理論的に純粋な分散コンピューティングアーキテクチャの方はどうか? こちらは、今もなお、ごくわずかな進歩しか遂げていない。

 分散コンピューティングのコンセプトを語るのは、非常にセクシーだ。しかし、もう一度繰り返すが、重要なのはソフトウェアだ。そのセクシーなコンセプトを顧客にとって意味のあるものに変えることができるのは、ソフトウェアしかない。

 それが、本当に見つけ出す必要のあるマジックで、Webが実現したマジックだ。

●ゲーム機とネットワークの未来は

[Q] あなたはMicrosoft社内でネットワークの専門家だった。だから、Xbox Liveの完成度が非常に高く、そのバックエンドも極めて高度であることも驚きはない。私は、ネットワークは次世代ゲーム機のカギのひとつだと考えている。あなたは、ゲーム機とネットワークの未来をどう考えているのか。将来像を教えて欲しい。

[Allard氏] 我々はすでにリーダーシップをXbox Liveで示してきた。GDCのスピーチで言ったように、XNAフレームワークの中にも、その技術を持ち込んでいる。

 我々はXbox Liveを今後も拡張し続けたいと思っている。しかし、Xbox Liveが(Microsoftの)全てのゲームプラットフォームに拡張しても、依然としてひとつのコミュニティにとどまる。これがカギだと考えている。

 過去のビデオゲーム機の良いところは、(ユーザーの)定着要素が何もなかったことだ。ゲーム機では、ATARIからNintendo、SEGAへと、ほとんどのユーザーが、どんどん変わり続けている。ユーザーを定着させる要素がなかったからだ。

 では、Xboxではどうか。今世代のXboxでは、Liveに100万の加入者を得た。彼らはXbox Liveの世界の中で、自分の成績を残し、友達や(自分の成績に対する)評価を得た。その彼らが、次にどんなゲーム機を買うのか。これは興味深い。

 我々は、Xbox Liveでコミュニティを育てることによって、これまでゲーム機に存在しなかった定着性を創り出したと考えている。これは、コンテンツ側にとっても意味があることだと思う。

 例えば、「オレはこの世界でランキングをアップしたい」とか「もっとがんばって周りからの評価を上げたい」とか、「こないだこの世界で知り合った友達とプレイしたい」といったコミュニケーションが生まれる。HALO 2が出てくると「おい、マーク、お前、HALO 3も買うかい」「多分ね」といったやりとりが生まれる。

 私は、こうしたコミュニケーションの潜在性を理解しないジャーナリストに、何度も説明してきたが、Xbox Liveこそ重要だ。だから、我々は、毎年、毎月、できるだけ頻繁にアップデートしてきた。特にXbox Liveが重要なのは、これがブリッジになることだ。今のXbox、次のXbox、今のWindows、次のWindows、これらの連結体(nexus)になる。

 では、ゲームクリエータはこの連結をどう利用できるのか。彼らは、異なるプラットフォームの間で共有される世界の構築を考えることができる。例えば、「待てよ、モバイルデバイスはどうだ。彼らも入れ込もう」といった風に。そうすると、ユーザーのWindows PCやゲーム機やモバイルデバイスのどれからでも、アクセスして触れることができる世界を作ることができる。これは、非常にパワフルだ。

[Q] だからXNAではモバイルデバイスもカバーするわけか。

[Allard氏] 正直な話、モバイルコンポーネントは時間がかかるだろう。モバイルコンポーネントが十分に統合され、モバイル機器でゲーム体験をユーザーができるようになるには時間がかかる。でも我々は近づきつつある。そう遠いわけではない。


□XNAのホームページ(英文)
http://www.microsoft.com/xna/
□関連記事
【3月31日】【海外】見えてきたMicrosoftの次世代Xbox戦略(1)
http://pc.watch.impress.co.jp/docs/2004/0331/kaigai079.htm
【3月25日】【海外】次世代Xboxのためのゲーム開発プラットフォーム「XNA」
http://pc.watch.impress.co.jp/docs/2004/0325/kaigai078.htm
【3月23日】【海外】次期ゲーム機のカギを握るのはOSとネットワーク
http://pc.watch.impress.co.jp/docs/2004/0323/kaigai076.htm
【2003年9月1日】【海外】久夛良木健氏が語る、PlayStation 3とCellの正体
http://pc.watch.impress.co.jp/docs/2003/0901/kaigai015.htm

バックナンバー

(2004年4月1日)

[Reported by 後藤 弘茂(Hiroshige Goto)]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2004 Impress Corporation All rights reserved.