(この記事の使用環境: Unity5.5.0f3 Personal、Windows10、SteamVR Plugin 1.2.0、VRTK3.0.1)


VR用アセット「VRTK」の Example 007_CameraRig_HeightAdjustTeleport の解説です。
高さ調整つきテレポート機能のデモです。
VRTK_HeightAdjustTeleport_01

■公式サイトの解説

VRTK公式サイトでこのExampleの解説文及び解説動画を見ることができます。ただし、動画に関してはVRTK旧バージョンのときに作られたものであり、VRTK3.0(以降)では設定等が異なっている場合があることに留意してください。動きを中心に見てもらえれば良いかと思います。

このExampleの解説動画



■VRTKのセットアップ方法および使用されているスクリプトの解説

適宜、以下の記事を参照願います。

■Exampleの解説

VRTK/Examples 内にある当該番号のシーンを呼び出すことで、デモを動かしてみることができます。

シーンには様々な高さの物体が配置されている。コントローラのレーザビームを使用してオブジェクトを指し示すことができ、レーザビームが物体の上を指している場合に、ユーザはオブジェクトの上にテレポートします。
また、ユーザがプレイエリアでオブジェクトの上でない場所に踏み入ると、ユーザは最も近いオブジェクトに落ちます。ヘッドセットの位置から床の検出が行われ、ユーザーはオブジェクトを登ることもできます。
SnapCrab_NoName_2017-2-1_13-48-3_No-00

以下、シーンに配置されているオブジェクトについての概要説明です。
  • ExampleWorldObjects: シーン上に配置されたオブジェクト群(上図のとおり)。

  • Left Controller、RightController: [VRTK] ゲームオブジェクトの下に配置されている、左右のコントローラー用のVRTKスクリプトをアタッチするゲームオブジェクト。
    VRTK_ControllerEvents 、VRTK_SimplePointer スクリプトなどがアタッチされている。

    VRTK_SimplePointer スクリプトにより、コントローラーから直線のポインタービームを発することができるようになっている。
    SnapCrab_NoName_2017-2-1_15-27-47_No-00

  • PlayArea: [VRTK] ゲームオブジェクトの配置されているゲームオブジェクト。
    VRTK_HeightAdjustTeleport スクリプトほかがアタッチされている。

    VRTK_HeightAdjustTeleport スクリプトがアタッチされているため、ビームを発しているコントローラーのタッチパッドを離すと、ビームが指し示していた場所へテレポートする。VRTK_HeightAdjustTeleport は、ポインタービームがオブジェクトの上を指し示していれば、ユーザーがそのオブジェクトの上に乗るよう Y 座標を更新する。
    SnapCrab_NoName_2017-2-1_15-29-54_No-00

今回は以上です。