0. 本記事の内容
本記事ではMeta Questで3Dオブジェクト(立方体)をVRで表示するまでの手順を紹介します。XR Interaction Toolkitを使用した基本的なカメラ設定からオブジェクトの配置、実機での動作確認まで、VRアプリケーションの基礎となる内容を学習できます。
GitHubで公開しているサンプルのXRI_Samplesプロジェクト、01-ShowObjectシーンでも動作を確認できます。
なお本記事は下記の続きとなります。設定等に間違いがないかご確認ください。
XR Interaction Toolkitのインストールとプロジェクトの設定
1. シーンの作成
[新しいシーンの作成]
- File -> New Sceneをクリック
- New SceneウィンドウでBasic(URP)を選択しCreateをクリック
- File -> Saveをクリック
- シーン名を設定し保存
*本記事ではShowObjectとする
2. Quest用のカメラの設定
[カメラリグの配置]
- Hierarchy内のMain Cameraを削除
- Projectタブの検索エリアにXR Rigと入力
- XR Origin Hands (XR Rig)をHierarchyにドラッグ&ドロップ
[視点の設定]
- Hierarchy内の**XR Origin Hands (XR Rig)**をクリック
- InspectorでXR Originを見つける
-
Tracking Origin ModeでFloorを選択
*Tracking Origin Modeは原点の高さを決めるうえで重要です
モード | 説明 |
---|---|
Floor | 床面の高さが原点 |
Device | アプリが起動した時のQuestの高さが原点(Camera Y Offset = 0) |
*オブジェクトの表示高さを部屋に対して固定したい場合はFloorを選択し、Questの初期位置に対してオブジェクトを固定したい場合はDeviceを選択します。
3. オブジェクトの配置
[立方体の作成]
- 他のオブジェクトを選択していない状態でHierarchyの空白を右クリック
- 3D Object -> Cubeをクリック
[位置とサイズの調整]
- Hierarchy内に追加されたCubeをクリック
- InspectorのTransformでCubeの位置・角度・サイズを設定
*本記事では下記の設定で床から1.3mの高さ、原点から1m向こう側に、少し傾いた0.3m相当の立方体を表示
項目 | X | Y | Z |
---|---|---|---|
Position | 0 | 1.3 | 1 |
Rotation | 0 | 20 | 0 |
Scale | 0.3 | 0.3 | 0.3 |
4. 移動機能を一時OFF(オプション)
XR Origin Handsには初めからコントローラによる移動の機能が設定されています。しかし現状のシーンには床などのフィールドがないため移動機能は不要です。下記の手順で一時的にオフにしましょう。
- Hierarchyで**XR Origin Hands (XR Rig)**をクリック
- InspectorでCharacter Controllerを非アクティブ(チェックをOFF)にする
5. 動作確認
[実機にインストールする場合]
- QuestとPCをUSBケーブルで接続
- Unity EditorでFile -> Build Settingsをクリック
- Build And Runをクリック
- インストーラ(apk)名を半角英数で設定して保存
- インストーラの生成とインストールが終わると自動的にQuest内でアプリが起動します
- 立方体が目の前に表示されるはずです。目の前とは異なる方角に表示される場合は右コントローラのmeta (oculus)ボタンを長押しして方位をリセットしてください
- インストールでエラーが出る場合は設定を見直すか、一度Buildでapkだけ作成してSideQuestやMetaQuestDeveloperHubからアプリをインストールしてください
[Meta Quest Linkを使用する場合(Windows)]
詳細は公式ページをご覧ください。
- QuestとPCをUSBケーブルで接続
- Quest内でQuest Linkを起動
- Unity EditorのPlayボタンをクリック
- 立方体が目の前に表示されるはずです。目の前とは異なる方角に表示される場合は右コントローラのmeta (oculus)ボタンを長押しして方位をリセットしてください
6. 次のステップ
ここまでの内容でVRでの基本的なオブジェクト表示が実現できました。次はパススルー機能を使ったAR表示について解説します。