イベント
[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?
![]() |
XNAとは? XNA Game Studioとは?
![]() マイクロソフトXNAグループプログラムマネージャー鈴木悠司氏 |
XNAとは,DirectX,XDK(Xboxプラットフォームの開発キット),XNA Game Studioのすべてとその開発支援プログラムを含めたマイクロソフトのゲーム開発環境全体を指しているのだそうだ。最近,エンドユーザーレベルでは「XNA=XNA Game Stduio」と同義に使うことが一般化しているが,マイクロソフト的な用語定義としてはそうではないらしい。
![]() |
XNAのキーワードが発表されたのはGDC 2004でのこと。そこから2年後の2006年にXNA GS1.0が,そして2007年にはネットワークに対応したXNA GS2.0が発表され,順当な年次バージョンアップが施されてきた,XNA GSは着実な進化を見せている。
現在のXNA GSのソフトウェアスタック構造は下図のようになっている。
マイクロソフト版Javaなどといわれることもある「C#」というC言語ベースのプログラミング言語があり,XNA GSによるゲーム開発はこのC#ベースで行われることになる。
![]() |
C#で組まれたプログラムはコンパイルされると「MSIL」(Microsoft Intermediate Language) という中間言語バイナリとして実行ファイルが生成されるが,これは直接実行することはできない。CLR (Common Language Runtime) と呼ばれるランタイムコンパイラ&ラウンチャで,MSILをターゲットプラットフォームにてリアルタイムコンパイルしてはじめて実行される。
非常に面倒くさい仕組みのよう思えるが,そのプラットフォームで動作するCLRさえ用意すれば,C#のプログラムは機種依存なく,どこでも動作できるというメリットがある。
WindowsにはC#動作環境として「Microsoft .NET Framework」(マイクロソフトドットネットフレームワーク)が提供されており,この「.NET」の仕組みをゲーム向きにカスタマイズしコンパクトにまとめたものが「.NET Compact Framework」だ。これにはXbox 360向けのCLRが実装されており,同一のプログラムをx86系のWindowsとPowerPC系CPUのXbox 360で動作できるのだ。
XNA GS3.0の新機能〜ZUNE対応が目玉だがZUNE自体の日本発売は未だ未定
![]() XNA GS3.0はVS2008,C#3.0に対応 |
ここからはXNA GS3.0における新機能を紹介しよう。
まず,XNA GS3.0では,これまでのXNA GSシリーズの開発環境がVisual Studio 2005ベースだったのに対し,Visual Studio 2008シリーズへの対応がなされる。これには無償版のVisual C# 2008 Express Editionへの対応も含まれる。
このバージョンアップに伴い,C#3.0にも対応する。ここはコンパイラ側の機能拡張であり,ランタイム側には大きな変化はない。ただし,言語の仕様拡張に相当するのでプログラム開発の効率は向上する。
![]() コンテンツの取り扱いに関する拡張が行われた |
PCではGames for Windows LIVE,Xbox 360ではXbox LIVEがサポートされたことで,マイクロソフトゲームプラットフォームにおいては,統合的なオンラインゲームプレイ環境が整備されている。XNA GS3.0では,この環境を効果的に活用するために,今ユーザーがどんなゲームをどのようにプレイしているかの状態を示す「リッチプレゼンス」,対戦ゲームプレイをシステマティックに呼びかける「ゲームへの招待」といった機能をXNA GS3.0ベースのゲームに組み込むことが可能となった。
![]() 1行目のゲーム名はゲーム開発者が自由に設定可能。2行目のゲームプレイ状態については性的/暴力的表現を回避するためにゲーム開発者は用意されたものを選択して利用する |
![]() ゲームのBGMとして一般的に利用されているMP3,WAV,WMAといった形式が利用できるようになった。再生中のBGMのリアルタイム周波数ステータスも取得できるので音楽に合わせたキャラクターの動きも可能になる |
![]() XNA GS3.0は携帯型メディアプレイヤー「ZUNE」に対応する。ZUNEのメインメモリは16MBだが,ゲームコンテンツ総容量にとくに制限はない。だから複数ステージからなる長編ゲームをZUNEで動作させることも可能だとのこと |
ZUNEはマイクロソフトが発売している携帯型メディアプレイヤーで,簡単にいってしまえばマイクロソフトが出したアップルiPodの対抗機になる。iPodにはさまざまなゲームが提供されているが,これからはXNA GS3.0で開発したゲームをZUNEで動かせるようになる。
![]() 現状,サポートされるグラフィックスは2Dベース |
具体的には,ZUNE1.0では方向キーが上下左右の4方向デジタルパッドのみを実装し,一方ZUNE2.0では4方向デジタルパッド+アナログタッチパッドの操作系を実装している。
![]() チーフXNAアーキテクトのChris Satchell氏 (General Manager and Chief XNA Architect, Microsoft) |
3Dグラフィックスのサポートについては今回のGameFestでは言及されなかったが,筆者が2008年2月にチーフXNAアーキテクトのChris Satchell氏にインタビューしたとき,現行のZUNE上でのソフトウェア3Dエンジンを実装する実験を行なったこと,そしてこのソフトウェア3Dエンジンで「Wolfenstein 3D」が30fpsで動いていることについて語ってもらっている。次期XNA GS以降では3Dグラフィックスのサポートの可能性はありうる。
ZUNEは無線LAN(Wi-Fi)に対応するが,ZUNEベースのGame LIVEシステムはまだないため,同一ゲームを開発してもWindows,Xbox360との相互対戦はまだサポートされない。その代わり,最大8機までのZUNE同士でのアドホックベース接続での対戦がサポートされる。これはXNA GS2.0時からサポートされた「SystemLine」セッションと同等のものになる。
ZUNE関連についてまとめると,今回のXNA GS3.0のアップデートにより,ZUNEもXNAフレームワークの一つに組み入れられた。これはつまり,Windows,Xbox 360,Windows Mobile,ZUNEの四つのプラットフォームで共通に動作するゲーム開発ができるようになったということだ。WindowsとXbox 360のハードウェア機能はそれなりに近いものがあるが,ZUNEは携帯型メディアプレイヤーなのでハードウェアスペックはそれらと比較して大幅に劣っている。これらのプラットフォームで共通に動作するゲームを開発する場合は,ゲーム仕様を自ずと最も低スペックなZUNEに合わせる必要が出てくる。携帯型メディアプレイヤーにおけるゲームプレイというとiPodのほうが先行しているイメージがあるが,ZUNEではXNA GS3.0で開発したWindows,Xbox 360と同一のゲームが遊べるというところが訴求点となる。
ただし,ZUNEはZUNE1.0が2006年に北米で発売されて以降,日本での発売計画がまったく聞こえてこない。今回も鈴木氏からはZUNEの日本展開についてはあまり歯切れのいい言葉は聞かれなかった。
![]() |
![]() |
![]() |
アナタの作ったゲームをXbox Liveで配信できる!
![]() XNA GS3.0で開発したゲームをXbox LIVEで配信できる |
自作XNAゲームの配信までのプロセスについては「[Gamefest 08#03]コミュニティゲームズ&アバター追加,年末から大きく変わるXbox LIVEとXNA」のほうも参照してもらいたいが,ここでも簡単に紹介すると,
(1)CREATE (開発する)
ゲームをXNA GS3.0で開発する
(2)SUBMIT (ゲームを送る)
自作ゲームをCCO:クリエイターズ・クラブ・オンラインに投稿する
(3)PEER REVIEW (評価をうける)
ほかのCCOメンバーからの評価を受ける
(4)PLAY (プレイする)
評価をパスしたものがXbox LIVE一般ユーザーが参照可能なXbox Liveマーケットプレースへとアップロードされる
という流れとなる。
開発したゲームはXbox LIVEマーケットプレースで有償コンテンツとして公開できるが,その場合はプレイ制限時間をベースとした体験版モードの実装が要求される。
ゲームコンテンツの最大容量は150MBまでで,これらは400MSP(MSP:マイクロソフトポイント),あるいは800MSPのXbox Live内電子マネーベースの価格を設定できる。また,最安値の200MSPで販売する場合の最大容量は50MBまでと制限される。収入は四半期ごとに開発者側に支払われるが,その額は売上総額の70%で,30%分はマイクロソフト側が徴収する。アマチュアゲーム作家が自作ゲームを全世界に広く販売する手段として非常に興味深い試みであり,今後,関連コミュニティの盛り上がりも期待されるところだ。
なお,開発するゲームに対しては厳しい仕様要件(Technical Certification Requirements)はなく,ゲームの仕様は開発者が自由に決めてよいことになっている。ただし,性的/暴力的/差別的などなど表現的な問題,ゲーム動作に重大な問題があった場合などは,マイクロソフト側が予告なく,そのゲームの公開を停止する場合があるとのこと。また,「Xbox LIVEコミュニティゲーム」として提供されるゲームは,Xbox LIVEアーケードで提供されるゲームとは異なり,プレイランキングや実績システムがサポートされない。
![]() Xbox LIVEマーケットプレースで有償販売をする場合は体験版の実装が必須要件 |
![]() 販売価格は3タイプ。ゲームコンテンツの最大容量は800MSP,400MSPで150MB,200SPで50MBとなっている |
XNAベースのゲームをXbox Liveアーケードに持って行くためには
![]() XNAゲームの配信先としてXbox Liveアーケードを選択したい場合は? |
これを可能にするのが「XNA GS Extensions for Arcade」(以下,E4A)となる。
これはマイクロソフトとライセンス締結したゲームスタジオに提供されるXNA Game Studio拡張キットという位置付けになり,アマチュア開発者に提供されるものではない。
ゲームの開発プロセス自体は通常のXNA GS3.0と同じだが,E4Aを適用するとXbox LIVEアーケード向けタイトルを開発するために必要なAPIが,一般公開版のXNA GS3.0に拡張追加される。これにより,「Xbox LIVE コミュニティゲーム」では未サポートだったランキングや実績の仕組みも実装できるようになる。
E4AはプロのゲームスタジオがXbox LIVEアーケード向けのゲームタイトルをXNA GSベースで開発するための拡張キットという位置付けだが,アマチュアゲーム開発者がプロとして起業してXbox LIVEアーケード・デビューをするためのアップグレードパスとしても利用できなくはない。
![]() |
![]() |
![]() |
![]() |
リリーススケジュールは?
![]() 日本ではXNA GS3.0は今冬登場。XNA GS3.0ベースのゲームをXbox LIVEで配信する「Xbox LIVE コミュニティゲーム」は日本では2009年前半始動 |
自作ゲームのXbox LIVE配信を可能にするXbox LIVEコミュニティゲームの仕組は北米,欧州では2008年末から,日本では2009年前半より動き出すとのこと。なお,日本の開発者が制作したタイトルは日本国内限定公開,もしくは1200万人規模のXbox LIVE全世界公開が選択できる(さらにいえば,好きな地域だけ指定しての配信も可能)。
マイクロソフトはGDC2004で「すべてのゲームプラットフォームで動作するゲーム開発システムXNAコンセプトを提唱する」とブチ上げ,GDC2008では「XNA GS3.0でゲーム配信の民主化を実現する」と宣言して話題を呼んだ。毎回発表される構想が壮大すぎて,そのたびに「どうなるやら」という声も聞かれたものだが,ここ4年間を振り返ると,堅実なバージョンアップによって,そうした構想の一つ一つが着実に具現化されつつあることに改めて驚かされる。
![]() 2004年3月のGDC2004にて,マイクロソフト副社長J.Allardは初めて「XNA」というキーワードを発表した。これはゲームプラットフォーム統合構想であると話され,その正体は当時は謎だらけであった |
![]() 2008年2月のGDC2008でマイクロソフト基調講演で掲げられた「ゲーム配信の民主化」のスローガンには度肝を抜かれたものだ |
あくまでマイクロソフト主導のマイクロソフトプラットフォーム向けの仕組みなので「民主化」が実現されたかどうかはおいておくとしても,アマチュアゲーム開発者が世界デビューを果たせる仕組みを,無償開発キットの提供から発表の場までを与えてくれる手厚いサポートぶりは,ソフトウェアカンパニーのマイクロソフトだからこそ実現できた功績だとは思う。
XNA GSシリーズは,日本では専門学校や大学のゲーム関連学科への採用も進んでおり,その最新版のXNA GS3.0が,日本のコンピュータゲームシーンに与える影響は大きい。今後もXNAの動向には注目していかなければならないだろう。
- この記事のURL:

















![画像集#003のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/003.jpg)
![画像集#002のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/002.jpg)
![画像集#004のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/004.jpg)
![画像集#005のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/005.jpg)
![画像集#006のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/006.jpg)
![画像集#007のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/007.jpg)
![画像集#008のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/008.jpg)
![画像集#009のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/009.jpg)
![画像集#010のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/010.jpg)
![画像集#011のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/011.jpg)
![画像集#012のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/012.jpg)
![画像集#013のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/013.jpg)
![画像集#014のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/014.jpg)
![画像集#015のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/015.jpg)
![画像集#016のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/016.jpg)
![画像集#017のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/017.jpg)
![画像集#018のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/018.jpg)
![画像集#019のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/019.jpg)
![画像集#020のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/020.jpg)
![画像集#021のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/021.jpg)
![画像集#022のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/022.jpg)
![画像集#023のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/023.jpg)
![画像集#024のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/024.jpg)
![画像集#025のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/025.jpg)
![画像集#026のサムネイル/[Gamefest 08#08]ゲーム配信の民主化を実現するXNA Game Studio3.0ってどんなもの?](/games/032/G003263/20080908029/TN/026.jpg)