- add addressables settings/groups for tile prefabs with custom TileBuildPath/TileLoadPath profiles and link.xml preservation - add editor tools for building tile addressables, configuring openxr quest loaders, removing missing scripts, and forcing android tool paths - add runtime loader + manifest model to stream tile bundles from persistent data with radius-based load/unload - add TestArea1 scene wired to GeoTileAddressablesLoader and update build settings to enable it - update geo tile prefab importer output path to Assets/TilePrefabs - update project/xr/android settings: min sdk 34, app id, openxr composition layers + quest devices, scripting define symbols, and renderer tweaks - update packages (addressables 2.8, ar foundation 6.3.2, composition layers 2.3, collab proxy 2.11.2) and record scriptable build pipeline config - remove temporary recovery scene files and add Notes plan/progress docs
1.2 KiB
1.2 KiB
Geo Tile Loading Plan
Goal
Stream terrain tiles on Quest from local storage using Addressables (one bundle per tile) with an offline-first workflow.
Approach
- Build tiles as Addressables (one bundle per tile).
- Store bundles + catalog + manifest under
Application.persistentDataPath/TileBundles/<platform>. - Runtime loader reads
TileManifest.json, loads the local Addressables catalog, and streams tiles in/out by distance.
Implementation Steps
- Tile prefabs
- Generate tile prefabs into
Assets/TilePrefabs.
- Generate tile prefabs into
- Addressables build
- Build Android content via
Tools > Geo Tiles > Build Tile Addressables (Android). - Output expected in
ServerData/TileBundles/Android.
- Build Android content via
- Device staging
- Push folder to Quest:
adb -s 2G0YC1ZG2V00BV push ServerData/TileBundles/Android/. /sdcard/Android/data/com.dtrierflood.dtrierflood/files/TileBundles/Android/
- Push folder to Quest:
- Runtime loader
- Use
GeoTileAddressablesLoaderin the scene. - Assign
playerto XR rig camera. - Adjust load/unload radii for memory/perf.
- Use
Debug Checklist
- Verify
TileManifest.jsonis on device. - Verify catalog file exists (
catalog_*.bin). - Enable
verboseLoggingon the loader to see init + tile loads. - Check device logs with
adb logcat -s Unity.