今回紹介するサンプルは、Coding4Fun Kinect Serviceを使ったサンプルの紹介です。
Coding4Fun Kinect Serviceは KinectのRGBカメラ、距離カメラ、スケルトン、およびオーディオを、1 つの PC から別の PC 、または、Windows Phone へ、TPC経由でネットワーク配信できるライブラリです。サーバーとクライアントライブラリの両方のデータを送受信に使用できます。
Coding4Fun Kinect Serviceは下記のURLよりダウンロードできます。
→ Coding4Fun Kinect Service
ダウンロードしたkinectservice.zipを適当なフォルダに解凍し、KinectService\Samplesフォルダの中を見ると、図1のようにClientsとHostsという2つフォルダが作成されています。
図1からHostsをダブルクリックして中を見ると、図2のようにConsoleHostとWindowsServiceという2つのフォルダがあります。
ConsoleHostフォルダ内のCoding4Fun.Kinect.KinectService.ConsoleHost.exe(図3)が、サンプルの配信用アプリケーションです。このアプリケーションをKinectが接続されているPC上で実行すると、IPアドレスが表示されます(図4)。もし、ファイアウォールの解除画面が出た場合は、許可してください。
これで、ホスト(配信側)の準備ができました。これ以後Windows Phoneをクライアントにした処理を書いていきます。実行画面は図5と動画を参照してください。
先にCoding4Fun.Kinect.KinectService.ConsoleHost.exeを実行して図4の画面を表示した後、Windows Phoneのデバッグを開始し、Address入力欄に図4の赤枠で囲まれているIPアドレスを入力して[OK]ボタンをクリックします。その後、Kinectセンサーから1mほどの距離でお試しください。あまり離れすぎると円がプレイヤーの関節の位置にうまく納まりませんので、注意してください。
関節の位置を取得して表示していますので、Windows Phone上のゲームでアバターをコントロールするなど、面白い使い方が考えられます。また、医療的な利用方法もあるのではないでしょうか?
今回はWindows Phoneのエミュレーターでしか動作の確認を行っていません。もちろん実機にデプロイして動作の確認は可能です。ただし、実機では処理が重く、動作がスローになってしまいます。これを解消する方法はありますが、画質が落ちるため、今回は紹介しておりません。機会があれば紹介したいと思います。
サンプル一式は、会員限定特典としてダウンロードできます。記事末尾をご確認ください。
