Up:Tutorial?    Previous:キネクトによるエージェントの操作? 


HMD+KINECT

※このサンプルはSIGVerse-121121, ビューワーv2.0.3以降で正常に動作します。

ここではキネクトとヘッドマウントディスプレイを使ってエージェントを操作するサンプルを紹介します。 前ページのキネクトによるエージェントの操作?の設定は完了しているものとします。

このサンプルはヘッドマウントディスプレイだけでも動作します。 ヘッドマウントディスプレイはVuzix Wrap 1200という機種を使用します。他の機種には対応しておりません。

HMDの準備

まずHMDが正常に使える環境を構築します。

VRManagerのインストール

こちらのページからVuzix VR Managerをダウンロード、インストールします。

キャリブレーション

次にHMDのキャリブレーションを行います。 まずHMDをPCに接続した状態でVR Managerを立ち上げます。

以下のようなウィンドウが立ち上がります。 HMDの動きに合わせて真ん中のYaw, Pitch, Rollの値が変動しているのを確認してみてください。

#ref(): File not found: "gyro.PNG" at page "HMD+KINECT"

確認したらHMDを平らな机の上に水平において "Reset Gyros"のボタンを押します。 別ウィンドウが立ち上がるのでNextボタンを押してHMDを動かさずに初期化が終わるのを待ちます。 終了したら"Finish"ボタンを押してウィンドウを閉じます。

次に"Begin Calibration"のボタンを押してキャリブレーションを開始します。 様々な方向にHMDを回転させます。いくら回転しても右のYaw, Pitch, Roll のバロメータが動かなくなったら"Lock Calibration"のボタンを押してキャリブレーションを終了させます。

HMDプラグインの準備

次にHMDサービスをSIGViewerに登録します。 まず以下のページからSIGHMD_<version>.zipをダウンロードします。

zipファイルを展開するとファイルSIGHMD.sigがあります。SIGViewerを起動して キネクトのときと同様にSIGHMD.sigをSIGViewerのサービスに追加します。

展開したフォルダはどこに置いても構いません。

コントローラサンプル取得

以下のサンプルをサーバ側でダウンロードします。

#ref(): File not found: "HMD_KINECT.tar.gz" at page "HMD+KINECT"

展開します。

$ tar xzvf HMD_KINECT.tar.gz

展開したディレクトリの中には以下のファイルがあります。

#ref(): File not found: "HMD_KINECT.cpp" at page "HMD+KINECT"

#ref(): File not found: "HMD_KINECT.xml" at page "HMD+KINECT"

#ref(): File not found: "Makefile" at page "HMD+KINECT"

パスの設定

展開したディレクトリに移動します。

$ cd HMD_KINECT/

環境変数を設定します。(既に設定済みであれば必要ありません) まずSIGVerseのインストールパスを設定します。

※以下sh,bashの場合

$ export SIGVERSE_PATH=/home/<usrname>/sigverse-<version>

次にPATHを設定します。

$ export PATH=$PATH:$SIGVERSE_PATH/bin

コンパイル

コンパイルします。

$ make

HMD_KINECT.soファイルが作成されていればコンパイル成功です。

実行

SIGVerseを実行します。

$ sigserver.sh -p 9001 -w ./HMD_KINECT.xml

接続

サーバを起動したらクライアント側でビューワーを起動してサーバに接続します。 KINECTとHMDがPCに接続している状態でそれぞれサービスを起動します。

このとき必ず"START"ボタンを押す前にサービスを起動してください。

サービスが起動したことを確認したら"START"ボタンを押してシミュレーションを開始します。

HMDの動きに合わせてエージェントの首が回転したら成功です。

#ref(): File not found: "HMD_1.PNG" at page "HMD+KINECT"

Old Version


Up:Tutorial?    Previous:キネクトによるエージェントの操作? 


Front page   New List of pages Search Recent changes   Help   RSS of recent changes