Cesium for Unity が含まれる Unity プロジェクトを Apple Vision Pro 向けにビルドする手順

Cesium for Unity を Window モード, VR モードの Apple Vision Pro アプリで利用する方法について記載します。
MR モードでの利用については以下をご覧ください。
(2024/12/19 追記)
Cesium for Unity v1.12.0 以降で手順に少し変更があったため追記しました。

公式ドキュメントの Step 1 を参考に、Cesium for Unity を Unity プロジェクトにインポートする

Library/PackageCache/com.cesium.unity@x.x.x
フォルダを Packages
フォルダ内に移動する
(Cesium for Unity パッケージ内のコードを変更できるようにするため)

Packages/com.cesium.unity@1.11.0/Runtime/generated/Reinterop/Reinterop.RoslynSourceGenerator
内にあるスクリプトの
#if !UNITY_EDITOR && UNITY_IOS
を #if !UNITY_EDITOR && (UNITY_IOS || UNITY_VISIONOS)
に書き換える
sed を用いる場合は以下のコマンドで書き換えられる
cd Packages/com.cesium.unity@1.11.0/Runtime/generated/Reinterop/Reinterop.RoslynSourceGenerator
sed -i '' 's/UNITY_IOS/(UNITY_IOS || UNITY_VISIONOS)/g' *.cs
(2024/12/19 追記)
Cesium for Unity v1.12.0 以降では Reinterop フォルダがなくなり、コードのパスが以下のように変わりました。
Packages/com.cesium.unity@x.x.x/Runtime/generated/Reinterop.RoslynSourceGenerator
sed の場合は以下のようにしてください。
cd Packages/com.cesium.unity@1.12.0/Runtime/generated/Reinterop.RoslynSourceGenerator
sed -i '' 's/UNITY_IOS/(UNITY_IOS || UNITY_VISIONOS)/g' *.cs
(2024/12/19 追記)
Cesium for Unity v1.13.1 以降の場合、追加で以下の変更を行ってください。
Cesium for Unity/Runtime/CesiumRuntime.asmdef
を選択し、visionOS にチェックを入れて Apply ボタンを押す。

上記リンクのコードを Unity プロジェクトに入れ、Unity Editor で visionOS 向けにビルドを行う

これ以降の手順は上のスクリプトで自動化されているものです。
スクリプトを用いない場合は、手動で以下の手順を行ってください。
Unity でのビルドで生成される Xcode プロジェクトの Libraries
フォルダ内に Cesium for Unity の iOS 用プラグインフォルダ (Plugins/iOS
) をコピーする
(2024/12/19 追記)
Cesium for Unity v1.12.0 以降の場合、コピーしたフォルダの lib フォルダ内に含まれている libjpeg.a
, libwebpdecoder.a
ファイルを削除してください。
Xcode にて Unity-visionOS の Libraries
フォルダ内にグループを作成する
(名前はなんでもいいがここでは Cesium
としている)

さらに作成したグループに対して子グループを作成する
(名前はなんでもいいがここでは lib
としている)

Libraries
フォルダ内にコピーした iOS
フォルダ内の libCesiumForUnityNative-Runtime.a
を Finder で選択し、Xcode で作成した親グループにドラッグ&ドロップで追加する

Libraries
フォルダ内にコピーした iOS
フォルダ内の lib
フォルダ内のファイルすべてを Finder で選択し、Xcode で作成した子グループ内にドラッグ&ドロップで追加する

これで Xcode のビルドが通りアプリケーションが実行できるようになる