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

Xboxがスマートフォンやタブレットと連携する「SmartGlass」の実態



●基本的にはクラウドベースのSmartGlass

 Microsoftは、米ロサンゼルスで先週開催されたゲームショウ「E3(Electronic Entertainment Expo)」で、Xboxをほかのコンピューティングデバイスと連携させる技術&サービス「SmartGlass」を発表した。SmartGlassの実態はクラウドサービスだ。基本的には、Xbox以外のデバイス上で走るHTML5ベースのアプリケーションとサービスを、Xboxと連携させるための、ベースになるソフトウェアモジュールとAPIセットとサーバーサービスを提供する。

 SmartGlassでは、Windows 8やWindows Phone、iPad/iPhone、Androidデバイスを、Xboxと連携させて使うことを可能とする。例えば、端末をXboxのコントローラとして使ったり、映像配信サービスのコンテンツを連携させて端末側で表示したり、Xbox側のコンテンツと連動したデータを端末側に表示させたりすることができる。SmartGlassが走るデバイスが、Xboxの周辺機器のように使えるようになる。

 SmartGlassシステムでは、端末側のSmartGlassで、Xbox Live IDでログインすると、SmartGlassサーバーによって、そのLive IDでログインされているXboxと紐付けされる。Xboxとの間のコミュニケーションは、SmartGlassのAPIセットで行なわれる。SmartGlassのサービスやアプリケーションは、HTML5アプリとしてダウンロードされる。基本的には全てHTML5アプリだ。「HTML5を使ったのは、HTML5以上にどのデバイスでもサポートされる言語がほかにないからだ。HTML5なら、どのデバイスでもそのまま走る」とE3でのSmartGlassの説明スタッフは語っていた。

●2レイヤーで構成されるSmartGlass

 実際には、SmartGlassは、大きく分けて2つのレイヤーで構成されている。1つはコミュニケーションレイヤーで、端末側とXboxを連携させるコミュニケーションを司る。もう1つはデータ共有レイヤーで、こちらは、Xboxと連携した端末にダウンロードするデータを司る。データ共有レイヤーでは、インターネット上のメタデータストレージサーバーに、SmartGlassに必要なデータを全てホストしている。現状では、MicrosoftのメタデータサーバーだけがSmartGlassと連動しているが、将来はこの部分も他社に公開するかも知れないと言う。

 SmartGlass端末をコントローラとして使う場合は、SmartGlassシステムを通じて、端末から制御コマンドがXboxに送られる。Xbox側はSmartGlass APIに対応しており、コマンドを受け取ってアプリケーションを操作する。SmartGlassのAPIセットは、SmartGlassコンテンツの開発者に公開される。現在は、例えば、ビデオサービスのコントロールを端末側で行なうこともできる。また、ビデオなどのサービスでは、Xboxで再生していたビデオを、端末側で続きを見るといった使い方もできる。

映画のキャスト情報などをSmartGlass端末側で見ることができる ビデオのシーン頭出しがSmartGlass端末側で操作できる

 SmartGlass端末上でアプリケーションを走らせる場合は、クラウド側のメタデータストレージからHTML5アプリが端末にダウンロードされる。自分の目前のXboxからデータが送られるのではなく、サーバーからインターネット経由でダウンロードされる。クライアント側にダウンロードしたHTML5アプリケーションは、SmartGlassのコミュニケーションサーバーを通じてXboxと連携する。クライアントを無線LANから3Gに切り替えても、コミュニケーションレイヤーが維持される限り同様に利用できるという。

 Xbox側のゲームやコンテンツがSmartGlassに対応している場合は、例えば、ゲームやコンテンツの場面に応じて、順次異なるコンテンツがダウンロードされる仕組みを作ることもできる。例えば、ゲームとの連携で端末側にマップを表示する場合なら、ゲームのマップが変われば、違うマップがダウンロードされ表示される。ムービーなら、ムービーの進行に連携して、SmartGlassクライアント側に新しい情報やを表示させることができる。特定のイベントやポイント毎にトリガをSmartGlassに送り、データを切り替えさせることができるようだ。

Xbox本体のゲームプレイに連動して、マップや敵キャラクタのデータを表示させることができる
ビデオに連動して地図が表示される カラオケの選曲をクライアントで行なうことも

●SmartGlassでHTML5ゲームをXbox 360と連携の可能性も

 MicrosoftはSDKを通じてSmartGlassのAPIを開発者に公開して開発を促して行くという。アプリ自体はHTML5ベースなので、開発者が対応しやすいとMicrosoftは説明する。また、デバイスに依存しないようできることも強味だ。ネイティブアプリと異なり、原理的には、各端末毎に異なる実行ファイルを用意する必要はない。実際には、デバイスの画面などに応じた調整は必要だが、基本はHTML5の1ソースでできる。

 SmartGlass API自体も今後拡張して行く可能性があるという。例えば、現在はSmartGlassクライアントからXboxへは、音声コマンドでの操作はできないが、APIを提供して音声を(サーバーへと)パススルーすることも原理的には可能だと言う。現在は、基本的なAPIを提供しているだけだとMicrosoftは説明する。

 より大きな可能性は、HTML5ベースのゲームの連携だ。SmartGlass端末側で、SmartGlass対応のHTML5ベースゲームを走らせ、Xbox側と何らかの連携を取るといったことも原理的には可能だとMicrosoftは言う。XboxとSmartGlass端末との、クロスプレイのような使い方もできるようになる可能性があるという。

 現在のところ、HTML5ゲームはゲーム機の敵の1つだ。今は、まだ両者の隔たりが大きいが、将来、最大のネックであるJavaScriptの実行速度が改善されHTML5+WebGLでブラウザゲームがリッチになると、ゲーム機を脅かす要素の1つになるだろう。SmartGlassは、HTML5ゲームとXboxとの橋渡しもする。

 大きな流れで見れば、これは、HTML5のレイヤーをアプリケーションプラットフォームにしようというトレンドへの対抗だ。ブラウザレイヤーをアプリケーションの土台にすることで、下のOSの意味をなくそうとするのが、Googleなどの大きな戦略だ。Microsoftは、SmartGlassではHTML5を切り口にすることで、その流れに対応しようとしている。

 現在、Microsoftは、.NETベースのXNAによって、よりライトなゲームをサポートしている。MicrosoftのSmartGlassで見せたHTML5への対応は、.NETからHTML5へと、さらに抽象度のレイヤーを上に引き上げる方向を示している。そのため、XNAに加えて、XboxでHTML5ベースのゲームも走るようになると、XNAの扱いがどうなって行くのかが注目される。

●クラウドとゲームの関係

 クラウドサービスであるSmartGlassをE3で大々的にフィーチャしたMicrosoft。このところ、クラウドとゲームは、どんどん密接になりつつある。先月は、NVIDIAの技術カンファレンス「GPU Technology Conference(GTC)」で、クラウドゲーミング配信サービスへのNVIDIAの取り組みが大々的に発表された。そして、今週、米ベルビューで開催されるAMDの技術カンファレンス「AMD Fusion Developer Summit(AFDS)」でも、AMDのクラウドゲーミングへの取り組みがフィーチャされる予定だ。

 NVIDIAやAMDが言うクラウドゲーミングは、ゲームをサーバー側で実行し、クライアントにゲーム映像を配信するサービスだ。ゲーム機やPCクラスのゲームを、たいしたGPUパフォーマンスを持たないクライアントでもプレイ可能にする。ビデオ配信サービスのゲーム版だ。

 こうしたクラウドゲーミング流れも、ゲーム機に影響を与える可能性がある。次世代ゲーム機のアーキテクチャやサービスを考える場合に、クラウドの存在は無視できない。例えば、前世代機のソフトウェアをクラウドでサポートするといった方法を取ることもできる。

 これまでの世代のゲーム機では、前世代のゲーム機との上位互換性を取るか取らないかが重大な問題だった。しかし、今後は、例えば、前世代ゲーム機のタイトルを、クラウドでサポートするなら、ハードウェアやソフトウェアでの上位互換は不要になる。もちろん、サービスを有料にするのか、過去のゲームディスクを持っているユーザーはどう扱うのか、運用上の問題は色々と発生する。クラウドの遅延がクリティカルな問題になるゲームもありそうだ。しかし、ハードウェア設計では、やっかいな互換問題を考える必要がなくなる。ただし、当然の話だが、クラウドゲーミングが、強くなると、それはゲーム機の存在意義を脅かすようになる。