Crash on mobile

Hello!

I need some help to discover why my application is crashing on mobile. I am hosting my application via iis. I have built my own UI, to handle zooming to locations, sun study, etc. Everything works fine on my computer but on mobile its crashes. I have tried a clean cesiumbuild with no UI of my own. Only loading my own terrain and my own buildings. using .fromUrl. But it still crashes. If I change to buildings that have no textures it does not chrash. I don’t get a distinct error message saying the viewer has crashed. The pages just reloads…

Does anyone have an idea of whats causing this? Memory overload? Problem with my textured buildings? They are created via FME. I feel like there is something I’m missing cause there are public applications with larger datasets that does not crash…

Thanks in advance!

Hi @Albnas,

If it is working on your computer, then the textured buildings are probably OK. But they could potentially be tiled in a way that is memory-intensive.

Are you loading the buildings as a Cesium3DTileset? Have you checked the value of Cesium3DTileset.totalMemoryUsageInBytes? If it grows to a very large value on your computer, then that could explain why mobile devices can’t handle it.

If the total memory usage is the problem, you could try setting cacheBytes and maximumCacheOverflowBytes to smaller values. This would make the tileset switch to a lower-resolution view when the memory is about to exceed your limits.

If you can share more details about how you generated the buildings dataset, we might be able to give some tips about how to optimize it for mobile.

Hi @jjhembd thanks for your response,

So far I have found that the crashing/page reloading only seem to happen on iPhones and not Android phones. From what I’ve read it’s due to Apples small amount of allowed ram on Safari and something to do with the privacy browsing.

Checking the live statisics with the 3DTilesInspectorMixin, the Texture Memory (MB) goes all the way from 500 to +1000.

The buildings are created by a some scripts in FME, Blender and Agisoft. The are written from obj with texture files to 3D tiles in FME.

The reload must have something to to with memory usage. I tried opening sandcastle (Google photorealistic tiles) on my iPhone and that cause the same crash/reload I’ve got in my application.

I’ve run 3d-tiles-validator found some issues, fixed them using 3d-tiles-tools, by upgrading them. See attached log files.

I have tried cutting the values of cacheBytes and maximumCacheOverflowByte by half but that seem to slow down the loading extremly, even on pc.

What values would an expert like you recommend?

Anything that helps us fix this issue is greatly welcome!

REPORTS.zip (2.6 KB)

Hi @Albnas,
Thanks for mentioning the “Google Photorealistic 3D Tiles” Sandcastle. I can now reproduce your problem, although on my iPhone it only happens in high-detail locations, and only after moving the camera around aggressively.

Here is a Sandcastle link showing a location where I can more frequently reproduce the crash.

Here is another Sandcastle link with adjusted parameters. When I load this version on my iPhone, it does not crash, even if I move the camera around very aggressively.

@Albnas can you try these two links and see if they perform differently on your device?

Hi @jjhembd , I tried your links on my iPhone and they both crash. Causing the page to reload. If its worth mentioning, I often get this popup message from safari on cesium pages/applications. “If this page doesn’t appear as expected, reducing advanced privacy protections may resolve the issue.” I have an iPhone 12 pro, ios 17.6.1