There was one crash bug in the game that was pretty nasty...I tracked it to the 3rd party physics library I'm using (Newton, www.physicsengine.com )...there's nothing I can really do about it, I've contacted the maker of Newton and I hope to work with him to fix
it once I get done with the IGF deadline.
The fix seems to be disabling the physics for the street side objects in the city. Because I have 10,000s of objects/vehicles/actors in the city I have two options:
- Create all objects at startup, and enable/disable them using the internal Newton function calls. which is pretty slow and has some considerable memory overhead.
- Create the objects in realtime as the enter/leave a certain radius of the camera, this is the approach I use. It allows me to have an unlimited number of physical objects in the game, there aren't any speed problems since I'll need to remove/add 2-5 objects each frame, it's pretty fast. I keep a copy of the last known physics matrix as the object leaves the camera's radius.
My theory is that I'm deleting an object and Newton is still referencing it...I sent an e-mail to the creater of Newton and he says this isn't likely, but so far I havn't experienced the crash since I disabled creating of street side city objects, I really hope it stays stable. And I hope we can work out this bug.
I'm making progress on every other aspect of the game as well.