Just had a little bit of bug hunting oddness -
I released Tank Universal after having it tested on W2000 and WinXP and users reporting it stable.
But Vista users were reporting a recurring crash at a particular point. Didn't have Vista available to me when testing, but managed to get some time on a Vista box today.
Turns out it was a pointer that wasn't being zeroed after a level change (I thought I'd got them all!). This pointer was being passed to a PhysX function (pxBodySetFlagRayCast) that sets a mesh (in this case non-existant) to being pickable by the PhysX engine. So by just making sure the pointer was properly cleared between level changes, problem solved!
But it was odd how this doesn't cause a crash on either W2000 or XP, but does on Vista. Guess that highlights the importance of good programming habits!
I released Tank Universal after having it tested on W2000 and WinXP and users reporting it stable.
But Vista users were reporting a recurring crash at a particular point. Didn't have Vista available to me when testing, but managed to get some time on a Vista box today.
Turns out it was a pointer that wasn't being zeroed after a level change (I thought I'd got them all!). This pointer was being passed to a PhysX function (pxBodySetFlagRayCast) that sets a mesh (in this case non-existant) to being pickable by the PhysX engine. So by just making sure the pointer was properly cleared between level changes, problem solved!
But it was odd how this doesn't cause a crash on either W2000 or XP, but does on Vista. Guess that highlights the importance of good programming habits!