I have been chasing down a crash that I can’t seem to cure.
This is what the terminal tells me:
WARNING: Physics: Overflow in AABB, object removed from simulation
doing a gdb bactrace, i get this:
#0 0x00007ffff71399cd in Urho3D::InitialQuickSort<Urho3D::InstanceData, bool (*)(Urho3D::InstanceData const&, Urho3D::InstanceData const&)> () from Urho_DYN/lib/libUrho3D.so.0
#1 0x00007ffff713e6f0 in Urho3D::BatchQueue::SortFrontToBack() () from Urho_DYN/lib/libUrho3D.so.0
#2 0x00007ffff70efe1b in Urho3D::WorkQueue::ProcessItems(unsigned int) () from Urho_DYN/lib/libUrho3D.so.0
#3 0x00007ffff70e7a2a in Urho3D::ThreadFunctionStatic(void*) () from Urho_DYN/lib/libUrho3D.so.0
#4 0x0000003fbfe079d1 in start_thread () from /lib64/libpthread.so.0
#5 0x000000354d6e88fd in clone () from /lib64/libc.so.6
Which doesnt tell me a lot… or at least doesnt tell me where in my code it might be happeneing.
What I am doing. I have a “level” of the game spawning a lot of physics objects, and removing them. Bullets, enemies, shell casings, pick ups, etc. They get removed after a certain amount of time (casing, bullets), or if they get far enough away from the player (bullets,enemies), and other bits of logic.
I am using FixedUpdate for the most part. But i recently added FixedPostUpdate, since the docs seem to say it happens after the physics update. So, I flag any node removals during the FixedUpdate, then if they are flagged, I remove the node_ in FixedPostUpdate.
Is that a good idea? is there a better idea?
My initial “fix” seems to have made the crashing occur a lot less frequently, but it still occurs sometimes.
Any push in the right direction would be very much appreciated.