Crashing when a Cesium title loads and we switch levels

Sometimes when we’re in a level which has Cesium3DTileset object, and it’s loading some tiles and we change levels - it sometimes crashes on the tick function, and we’ve tried to set SuspendUpdate = True on actor’s EndPlay event, so that we can stop the tick function, but it doesn’t seem to work all the time - can you tell us how to stop Cesium from loading any tiles before we can switch levels?

This is the stack trace we’re getting:

06-28 00:26:58.721 29789 29789 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x6de6e36698
06-28 00:26:58.721 29789 29789 F DEBUG : x0 0000006de6e36088 x1 0000006db8f98b20 x2 ffffffffffffffd0 x3 0000006e51df8af0
06-28 00:26:58.721 29789 29789 F DEBUG : x4 0000006e51df8b00 x5 0000006e51d8ea90 x6 bfeddb88243b296e x7 41527340d503875a
06-28 00:26:58.721 29789 29789 F DEBUG : x8 0000006de6e36698 x9 55902a3a09d6a955 x10 0000000000000001 x11 0000006fb3260180
06-28 00:26:58.721 29789 29789 F DEBUG : x12 0000006efce09520 x13 0000000000000037 x14 00000000bfee3df3 x15 000000003fff65ff
06-28 00:26:58.721 29789 29789 F DEBUG : x16 0000006faa27a3c0 x17 000000709e098398 x18 0000006fae9e8000 x19 0000006f30cba060
06-28 00:26:58.721 29789 29789 F DEBUG : x20 0000006db8f98b20 x21 0000006f30cba500 x22 0000006e6adb1840 x23 0000006de6e36088
06-28 00:26:58.721 29789 29789 F DEBUG : x24 0000006fb26c3020 x25 0000006e6adb1848 x26 0000006faa2f2448 x27 0000006e51d8eba0
06-28 00:26:58.721 29789 29789 F DEBUG : x28 f0f0f0f0f0f0f0f1 x29 0000006fb26bdaf0
06-28 00:26:58.721 29789 29789 F DEBUG : sp 0000006fb26bd8d0 lr 0000006fa22fdddc pc 0000006fa8ac85bc
06-28 00:26:58.831 29789 29789 F DEBUG :
06-28 00:26:58.831 29789 29789 F DEBUG : backtrace:
06-28 00:26:58.831 29789 29789 F DEBUG : #00 pc 0000000011a045bc /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #01 pc 000000000b239dd8 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (ACesium3DTileset::Tick(float)+1188) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #02 pc 000000000f27b608 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (AActor::TickActor(float, ELevelTick, FActorTickFunction&)+312) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #03 pc 000000000f276e84 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FActorTickFunction::ExecuteTick(float, ELevelTick, ENamedThreads::Type, TRefCountPtr const&)+912) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #04 pc 00000000101d2498 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FTickFunctionTask::DoTask(ENamedThreads::Type, TRefCountPtr const&)+512) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #05 pc 00000000101d1e34 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (_ZN10TGraphTaskI17FTickFunctionTaskE11ExecuteTaskER6TArrayIP14FBaseGraphTask22TSizedDefaultAllocatorILi32EEEN13ENamedThreads4TypeE+788) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #06 pc 000000000bda9004 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FNamedTaskThread::ProcessTasksNamedThread(int, bool)+1856) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #07 pc 000000000bda7908 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FNamedTaskThread::ProcessTasksUntilQuit(int)+148) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.831 29789 29789 F DEBUG : #08 pc 000000000bda5280 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (_ZN24FTaskGraphImplementation22WaitUntilTasksCompleteERK6TArrayI12TRefCountPtrI11FGraphEventE16TInlineAllocatorILj4E22TSizedDefaultAllocatorILi32EEEEN13ENamedThreads4TypeE+1024) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #09 pc 00000000101cae00 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FTickTaskSequencer::ReleaseTickGroup(ETickingGroup, bool)+2032) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #10 pc 00000000101c5bf8 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FTickTaskManager::RunTickGroup(ETickingGroup, bool)+116) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #11 pc 000000000f9fb5cc /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (UWorld::Tick(ELevelTick, float)+20896) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #12 pc 000000000f824afc /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (UGameEngine::Tick(float, bool)+4352) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #13 pc 0000000009ebffe4 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (FEngineLoop::Tick()+28972) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #14 pc 0000000009eb763c /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (AndroidMain(android_app*)+4224) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #15 pc 0000000009ec7104 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (android_main+164) (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #16 pc 0000000009ef65f4 /data/app/com.package.local-iAUNB08NqGuTKxzibA0xSQ==/lib/arm64/libUE4.so (BuildId: 599ff2321fa27793451b41adc69e65f4be0e5e78)
06-28 00:26:58.832 29789 29789 F DEBUG : #17 pc 00000000000d5c54 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36) (BuildId: 9b681c3efce93ec2d49df4ec43b4b7e6)
06-28 00:26:59.421 1578 2636 I PerformanceManager_V0: SetClockLevels: Apply pending clock request change: 3,3 → 2,3

Hi @carlrealvr,

I think there’s a good chance this will be fixed by this pull request:

You can find links to pre-built binaries from this branch by clicking “Show all checks” near the bottom.

Let me know if this fixes the problem for you. It will be included in our release at the end of this week.

Hi @Kevin_Ring we tried to apply this patch to our code, and it didn’t work. We’re still getting the same crash and the stack trace is exactly the same as posted above. We’re also using the latest version 1.15.1 - do you know if this was fixed and/or is it something else (likely)?

We have recently found and fixed a credits-related crash (Credits Crash by joseph-kaile · Pull Request #922 · CesiumGS/cesium-unreal · GitHub). That will be fixed in the next version, to be released next week. I’m not sure if that’s what you’re seeing or not, though. That fix is in ue4-main already, so you can try a build from there if you like. If that doesn’t help, can you please describe in is much detail as you can how the crash happens, and share the latest call stack (in case there’s a subtle difference from what you posted above)? It would be helpful as well if you can reproduce it using the Cesium for Unreal Samples project, if possible, and tell us what steps to follow to reproduce it (even if it takes a few tries).

Thanks,
Kevin