新たなゲーム体験を実現?! 〜 Wiiリモコンを使った人体検知システム

年末商戦を迎え、先週は約17万台と非常に好調な売れ行きを見せているWii。そんなWiiの特徴的な要素として、WiiSportsで活用されている「モーションセンシング」にどうしても注目が行きがちですが、もう一つWiiの標準的要素として用いられている「ポインティング」も、Wiiを語る上ではずすことの出来ない要素と言えます。特に、個人の癖などの把握が難しいモーションセンシングよりも、ポインティングの方が安定した処理が行えることもあり、Wiiのメニュー操作に利用されているだけでなく、バイオハザード4WiiやバイオUC、ゴーストスカッドなどのシューティングデバイスとしても高い評価を受けています。

逆転の発想で実現されているWiiの「ポインティング」機能

そんなWiiポインティング機能、発売前は「センサーバー」という名称にだまされてセンサーバーの両端にカメラやセンサーが付いており、リモコンの位置を特定しているのかと思っていたのですが、実際にはその逆。センサーバーは単なるLEDを両端に仕込んだマーカーに過ぎず、リモコン側にCCDカメラが仕込まれているという、まさに逆転の発想で実現されたものでした。

Wii体験会レポート(ハード編) 『Wiiリモコン ポインティング』 - わぱのつれづれ日記
センサーのないWiiの「センサーバー」 - わぱのつれづれ日記

上記の通り、センサーバーは単なるマーカーなので他のLEDでも容易に代用可能。自分もアキバでちょこちょこっとパーツを買ってきて自作センサーバーを作ったりしたものです。

はさみとカッターだけでできる Wii用「自作センサーバー」 - わぱのつれづれ日記

最近では同様の技術がPS3用のタイムクライシス4でも採用されていますね。

ガンコン3のポインティングの仕組み詳細 〜 Wiiとの比較も - わぱのつれづれ日記

「逆の逆の発想」〜Wiiリモコンで人の動きをセンシング

さて、上記のように「センサーバーをあえてマーカーとして使う」という逆転の発想で実現されているWiiポインティング技術ですが、今度はそのさらに発想を逆転して、TV側にWiiリモコンを置いて実際に「センサー」として利用する取り組みをしている方がいるようです。

上記動画では、Wiiリモコンをテレビ側に固定、プレイヤーが頭部にセンサーバー相当のもの(動画内ではLED付きグラス)をつけることでWiiリモコンがユーザーの頭の位置を大まかに把握、それに応じて画面内の3D映像を変化させることで、まるでディスプレイから物体が飛び出しているかのように見える、ということを実現しています。

正直、仕組み的な事だけから言えば対してすごいことをやっているわけではありません。ヘッドトラッキングという概念はバーチャルリアリティの世界では古くからあるものであり、これまでにもいくつも実現例があります。頭の位置が分かれば、その位置に合わせてCGを動かすこと自体はそれほど難しい話ではありません。CG精製用の内部カメラ位置を変更するだけでしょうから。

ただ、そうしたシステムはこれまでは比較的高価なヘッドトラッキング用マーカーとセンサーを用いており、コンシューマー向けではありませんでした。それに対して、この動画の技術では「Wiiの標準デバイスだけを使ってヘッドトラッキングを実現」していることに意義があるわけです。実際には有線で棒状のセンサーバーを頭につけて使用するのは現実的ではないので、動画中のようなマーカーグラスなどを用意することになると思いますが、こちらは単なるLED光に過ぎないので低コストで実現できます。既存の大きく売れている商品で、安価に実現できるというのは、この手の娯楽商品としては非常に重要なポイントでしょう。

特にWiiリモコンの場合は汎用的なBluetoothでの通信が行われており、その通信内容もすでに解析されています。

Wiiリモコンを用いたPC操作 〜 WiinRemoteレビュー - わぱのつれづれ日記

このように、PCでも比較的手軽に容易に利用できるところが面白いところですね。

その他の応用例

上記で紹介した動画ですが、これは"Johnny Chung Lee"というカーネギーメロン大学の博士(ドクター)の方の研究成果の一つとなっています。

Johnny Chung Lee - Human Computer Interaction Research

このJohnnyという人は他にもWiiリモコンを使っていろいろと研究をしているようで、以下のページでいくつか紹介されていますね。

Johnny Chung Lee - Projects - Wii

基本的には、どれも「TV側にWiiリモコンをおき、人側を認識させる」という発想で作られています。

上記の動画では、カメラ側にWiiリモコンを設置、さらに大量のLEDを並べて人側に赤外線光を照射しています。このLED光照射装置の前に人が手をかざすとその指に光が当たって反射、それをWii側で検知して指の位置を特定します。
この方式の欠点は、「具体的にどの指に光が当たったのかが明確に分からない」ということでしょうか。あと複数の光点を検知した場合にどれをメインに利用するかなども、ノウハウが必要そうです。

一方、上記の動画では、タッチペン側にLEDを仕込み、プロジェクタでの投影画面におけるタッチペンの位置をWiiリモコンでセンシングしています。これも原理的にはコンピュータビジョン的には非常に単純なもので、最初にキャリブレーションとしてスクリーンの4隅をタッチペンで指定し、記憶しておきます。あとは、この4点の位置と実際の操作しているタッチペンとの位置との関係を用いて座標変換をしてやるだけでポインティング位置が求まります。さらに、複数のLED光も認識できますので、2本のタッチペンによる操作といった、目新しいUIが実現できているのも面白いですね。

こちらも欠点としてあげるなら、「タッチペンの光とWiiリモコンとの間に腕や身体がかぶってしまうと位置が取れない」という点ですかね。少し斜め後ろからWiiリモコンで撮影することでこの問題はケアはしていますが、こうしたカメラを後ろに置く手法では常につきまとう問題だとは思います。

ゲームとしてどう面白いものにできるか

以上、いろいろJohnnyさんの取り組みを紹介してきましたが、どれも動画でのデモが分かりやすく、とても面白そうな感じですね。動画の再生数やコメントを見ても、そのインパクトが大きいことが分かります。加えて、基本的にはWiiリモコン+LEDという構成なので、コストが非常に安いことも大きな要素でしょう。

TV側にセンサがあると言うことで、PS3eyeToyでも基本的には似たような事はできると思います。単純なカメラ映像からソフトで頑張って人体認識をするeyeToyよりも、撮像を赤外光に限定することでマーカー位置だけをシンプルに認識するWiiリモコンは、なかなかバランスの取れた装置と思いますね。(eyeToyでも人側に分かりやすいマーカーをつければ同様の事ができますし、撮像の情報量が多い分、マーカー無しに人体姿勢認識などより凝ったことができるメリットもありますけど。EYE OF JUDGEMENTのようなバーコードリーダーがわにもつかえますしね。)

ただ、実際にこの技術を使ってどこまでゲームプレイを面白くできるかは、また別の問題だと思われます。最初に紹介したヘッドトラッキングも、頭の位置に合わせて見え方が変わるのは非常に面白いと思いますが、動画の最後で紹介しているシューティングなどを実際に実装しようとすると、結構難しいと思いますね。元々Wiiリモコンでのポインティング自体絶対的なポインティング箇所を認識しているのではなく、ユーザーの狙っている大体の方向にマーカーを表示して、最終的にはプレイヤーがマーカーを見て微修正するような仕様。この状態で、「仮想的に飛び出て見えている的に対してのポインティング」を正しく高精度に認識できるかというと、ちょっと難しい気もするんですよね。WiiリモコンでのポインティングゼルダWiiのときにようにがっちりキャリブレーションしてしまえば、ある程度できるかもしれませんが。

それ以外でも、技術的課題をクリアしてもそれをゲーム性に反映できないようでは、「ぱっと見おもしろい」程度で終わってしまいます。瞬間的なインパクトを、継続的な新しいゲーム体験に変えるには、こうした新しい入力方法をゲームに生かすクリエーター側の発想力が求められて来ます。Wiiのモーションセンシングでも同様の壁ができていますが、今後こうした入力方法の変化が生まれるたびに起きる問題なんでしょうね。

グラフィックだけでなく入出力関係の発展にも期待

とはいえ、多数のボタンを使って2Dのディスプレイに向かってゲームするというものは、ある程度確立されている一方で発展性の行き詰まりが見られているのも事実。グラフィックの向上やAIの改善、物理演算などでまだまだ改善の余地は残されているとは思いますが、そっちの方面ばかりに開発者の知恵と労力を使うのではなく、こうした異なる入力・表現方法にも力を注ぎ、より新しいエクスペリエンスをユーザーに与えてくれることを期待したいですね。


P.S.
この手のネタに詳しいengadgetさんのところでも記事にされていますね。
Wii リモコンで頭の位置を認識する VR システム - Engadget Japanese