0. 本記事の内容
本記事ではMeta Questで3Dオブジェクト(立方体)をVRで表示するまでの手順を紹介します。Meta XR SDKの基本的なカメラ設定からオブジェクトの配置、実機での動作確認まで、VRアプリケーションの基礎となる内容を学習できます。
GitHubで公開しているサンプルの01-ShowObjectシーンでも動作を確認できます。
なお本記事は下記の続きとなります。設定等に違いがないかご確認ください。
1. シーンの作成
[新しいシーンの作成]
- File -> New Sceneをクリック
- New SceneウィンドウでBasic(URP)を選択しCreateをクリック
- File -> Saveをクリック
- シーン名を設定し保存
*本記事ではShowObjectとする
2. Quest用のカメラの設定
[カメラリグの配置]
- Hierarchy内のMain Cameraを削除
- Projectタブの検索エリアにCameraRigと入力
- 検索エリア直下のSearch:からAllを選択
- OVRCameraRigをHierarchyにドラッグ&ドロップ
- Project Setup Tool Fix Availableが表示された場合はFixをクリック
[OVR Managerの設定]
- Hierarchy内のOVRCameraRigをクリック
- InspectorでQuestに関する詳細情報を設定するOVR Managerを見つける
- Trackingの項目内のTracking Origin TypeでFloor Levelを選択
*Tracking Origin Typeは原点の高さを決めるうえで重要となります
モード | 説明 |
---|---|
Floor Level | 床面の高さが原点 |
Eye Level | アプリが起動した時のQuestの高さが原点 |
*オブジェクトの表示高さを部屋に対して固定したい場合はFloor Levelを選択し、Questの初期位置に対してオブジェクトを固定したい場合はEye Levelを選択します。
3. コントローラや手の表示
本記事では手やコントローラを使ったインタラクションを紹介しませんが、この後に続く記事でこれらを使用します。また、手やコントローラがQuestによって認識されていることが動作確認の段階で視覚的に確認できると楽しいため、設定手順を紹介します。
[インタラクション機能の追加]
- Projectタブの検索エリアにOVRInteractionComprehensiveと入力
- 検索エリア直下のSearch:からAllを選択
- OVRInteractionComprehensiveをOVRCameraRigにドラッグアンドドロップし、子要素として追加
[ハンドトラッキングの設定]
- Hierarchy内のOVRCameraRigをクリック
- InspectorでQuestに関する詳細情報を設定するOVR Managerを見つける
- Quest Featuresの項目の中からHand Tracking Supportを見つけて、好みのモードを選択
*本連載ではControllers and Handsを選択していることを前提とします。
設定名 | 説明 |
---|---|
Controllers Only | コントローラのみが動作しハンドトラッキングは無効 |
Controllers and Hands | コントローラとハンドトラッキングの両方が動作 |
Hands Only | ハンドトラッキングのみが動作 |
[コントローラのRayを常時表示(Optiional)]
コントローラのポインティングの方向を示すRayオブジェクトは常時表示ではありません。もちろんそのままで問題はありませんが、もしRayオブジェクトを常時表示したい場合は下記の手順で設定で可能です。
- OVRInteractionComprehensiveの子要素のLeftInteractionsを開く
- さらにInteractors -> Cntroller -> ControllerRayInteractor -> Visualsを開く
- Visualsの子要素のControllerRayをクリック
- Inspectorで**Controller Ray Visual*に注目
- Hide WHen No InteractableのチェックをOFF
- RightInteractionsについても同様の操作を行い右手のRayの設定を行う
4. オブジェクトの配置
[立方体の作成]
- 他のオブジェクトを選択していない状態で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 |
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表示について解説します。