Coo. Mysterious “pure virtual function call” bug eliminated (stupid error message, that’s not what I was doing at all). Mysterious crashing on std::set::erase() bug eliminated by switching to std::list. Mysterious sounds only playing at origin bug fixed by using a different position set method. Everything seems to be working. That’s surely not right.