LoginSignup
7
3

Meta Quest 3で開発する、はじめの一歩

Last updated at Posted at 2023-11-25

Meta Quest 3で、自分でUnityプロジェクトを新規作成し、
下の例の空が眺められるところまでいきます。

前提

  • Windows10(基本Macでも同じです)
  • Unity 2023.2.0f1
  • Meta XR Core SDK 59.0.0

その他

過去のQuestでの開発との大きな違い

  • 以前は Oculus Integration SDK をAssetStore経由でインポートしていたかと思いますが、現在は非推奨となっています。Asset自体はストアにあるのでダウンロードは可能です。
  • 以前はProject Settingsをポチポチ変更していましたが、今はその変更をサポートしてくれる仕組みが導入されています。

手順

Unity

  1. プロジェクトの作成
  2. ビルド設定
    1. File → Build Settings…
    2. Androidを選択して Switch Platform
  3. com.meta.xr.sdk.core をPackage Managerで install package by name からインストール
    1. Restart Edtiorのダイアログが表示されるので、UnityEdtiorを再起動します
  4. Project Settings
    1. → Oculus
      1. Fix All を押す
        1. Outstanding Issuesが残っているようであれば、個別に Fix を押します
      2. Apply All を押します
    2. → Player
      1. Publish Settings/BuildのCustom Main Manifestのチェックを外します
  5. シーンの編集
    1. Main Cameraを削除
    2. Packages/Meta XR Core SDK/PrefabsからOVRCameraRigをドラッグアンドドロップ
    3. OVR ManagerのQuest3にチェックを入れます
  6. ビルド
    1. Add Open Scenes
    2. Build
      1. 適当なフォルダに適当なファイル名でapkファイルを出力します

インストールと実行

  1. インストール
    1. adb install ビルドした.apk
  2. Quest3
    1. アプリライブラリを選択
    2. 検索ボックスの右側にあるドロップダウンから、提供元不明を選択
    3. インストールしたプロジェクトを選択して実行
      1. 実行したけど何も起こらない場合、裏でDeploymentOperationFailedExceptionが発生している可能性があります。Unityの手順4.bを実施しているか確認してください。
    4. 例の空が見えているはずです。

エラー

DeploymentOperationFailedException が出る

原因

Android の Manifest ファイルが複数存在すると起こりうるらしい。参考

対応方法

両方やる必要はありません。

  • Project Settings → Player → Publish Settings → BuildのCustom Main Manifestのチェックを外す
  • Tool → Oculus → Remove AnsroidManifest.xml と選択し

TextMeshPro のエラーが出る

エラー内容

Library\PackageCache\com.unity.textmeshpro@3.0.6\Scripts\Editor\TMP_PreBuildProcessor.cs(26,31): error CS1061: 'TMP_FontAsset' does not contain a definition for 'ClearFontAssetDataInternal' and no accessible extension method 'ClearFontAssetDataInternal' accepting a first argument of type 'TMP_FontAsset' could be found (are you missing a using directive or an assembly reference?)

原因

com.meta.xr.sdk.all をPackage Managerからインストール(install package by name)すると、[com.meta.xr.sdk.interaction](https://developer.oculus.com/downloads/package/meta-xr-interaction-sdk/) の依存関係にTextMeshPro 3.0.6が依存関係として入っているため、上記エラーが発生します。

対応方法

両方やる必要はありません。

  • com.meta.xr.sdk.allをアンインストールして、必要なSDKのみをインストールする
    • 上記手順はこちらです
  • Unityのバージョンを変更し、TextMeshProのバージョンを下げる(未検証)

参考

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3