Search Issue Tracker
Fixed in 2022.2.X
Fixed in 2020.3.X, 2021.2.X, 2022.1.X
[Texture][Vulkan][XR] Loading texture at runtime needs 2x memory compared to a built-in texture
1. Open the attached user's project "GLTFSizeRepo.zip"
2. Open "Assets/Scenes/MemoryComparison.unity" Scene
3. Open Window > Memory Profiler
4. Build the project to Quest 2 with Vulkan and Development build enabled
5. Connect memory profiler to the Quest build
6. Connect the console to the Quest build
7. Take a capture
8. In Quest, press the left Controller Menu button and select "Cube (gltf load)"
9. Press "log texture format"
10. After the cube is loaded, take a memory capture
11. In Quest, select "Cube (builtin)"
12. Press "log texture format"
13. After the cube loaded, take a memory capture
14. Compare the memory captures
15. Note with the "Cube (gltf load)" loaded scene, the texture "Texture 2D" in the bottom right corner of the memory profiler Texture region takes 0.5 MB
16. Note with the "Cube (builtin)" loaded scene, the texture "Grid <Texture2D>" takes 256.4 KB (see attached screenshots)
Expected result: Loading texture at runtime needs 2x the memory compared to a built-in texture
Actual result: Loading texture at runtime needs 2x the memory compared to a built-in texture
Reproduces on: 2020.3.24f1, 2021.2.7f1, 2022.1.0b2
Could not test 2019.4.34f1 due to errors in the Console when downgrading the project
Reproducible on these devices:
VLNQA00415 - Oculus Quest 2 (Quest 2), OS: 10, CPU: Snapdragon XR2, GPU: Adreno 650
Not reproducible on these devices:
VLNQA00091 - Google Pixel 2 XL (Pixel 2 XL), OS: 11.0.0, CPU: Snapdragon 835 MSM8998, GPU: Adreno 540
-Note that in the console logs, both textures are identical in every regard: same format, same size, same everything. Also, both are not in CPU memory anymore, they are only in GPU memory
-Issue is not reproducible on Windows Standalone and Android
-Reproducible only with Vulkan, because the Application does not respond with OpenGLES 3
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [Linux] Android build fails with “CommandInvokationFailure: Gradle build failed.” error
- [iOS] Touch.rawPosition changes position when touch is dragged
- Loading a scene with a large amount of light probes causes a performance spike
- The player does not refresh window display properties when opening the Player on another display
- Spot Light flickers when when it's far from the origin point