😎

UnityでVRコンテンツを作成する手順メモ 2023年版

2023/01/11に公開

環境

  • Windows10
  • Unity2022.2.1f1
  • MetaQuest2
  • QuestLinkで動かす
  • URP
  • OpenXRを使う
  • InputSystemを使う

準備

プロジェクト作成

  • バージョン: 2022.2.1f1
  • テンプレート: 3D(URP)

手作業で設定したかったので、テンプレートはあえてVRにしていません。

パッケージ追加

PackageManagerウィンドウ(Window>PackageManager)から追加する。

  • InputSystem 1.4.4 (Unityが再起動します)
  • XR Interaction Toolkit 2.1.1
  • XR Plugin Management 4.2.1

追加後の構成

プロジェクト設定

XR Plug-in Management設定でOpenXRをチェックする。

OpenXR設定で、Interaction ProfilesにOculus Touch Controller Profileを追加する

StarterAssetsを追加

StarterAssetsとは、XR Interaction Toolkitのデフォルトのコントローラー設定を含むアセットです。

PackageManagerウィンドウでXR Interaction Toolkitを選択し、SamplesタブのStater Assetsをインポートする。

シーン作成

SampleSceneのMainCameraを消す

VRでは使わないので消す。

XR Originを追加する

ヒエラルキーウィンドウで右クリック>XR>XR Origin(VR)

追加後の構成

XR Interaction Managerを追加する

XR OriginコンポーネントがアタッチされたGameObjectに、XR Interaction Managerコンポーネントをアタッチして、Starter AssetsのXRI Default Input Actionsをセットする。

コントローラー設定

Starter AssetsのXRI Default Left ControllerをLeftHand ControllerのインスペクタのXR Controller (Action Based)のタイトルバーにドラッグアンドドロップ

右も同様に設定する。

コントローラーのモデル追加

XR Controller (Action Based)のModel Prefabにコントローラーのモデル(Prefab)をセットする。

公式のコントローラーモデルはこちら

移動設定(連続移動)

XR OriginコンポーネントがアタッチされたGameObjectに、Locomotion SystemとContinuout Move Provider (Action Based)をアタッチする。

Starter AssetsのXRI Default Continuous MoveをContinuout Move Provider (Action Based)のタイトルバーにドラッグする。

回転設定(スナップ回転)

XR OriginコンポーネントがアタッチされたGameObjectに、Snap Turn Driver (Action Based)をアタッチする。

Starter AssetsのXRI Default Snap TurnをSnap Turn Driver (Action Based)のタイトルバーにドラッグする。

最終的なXR Originの構成

動作確認

QuestLinkを繋いでエディタを再生すると、前後移動、スナップ回転、コントローラー表示ができるはず…

Discussion