I have been having an extreamly obscure bug i just cant get my finger behind.
I create a hkpExtendedMeshShape and generate a moppCode from it. I then use a hkpMoppBvTreeShape as shape input for a rigid body. This rigid body is then added to the world just like in the examples given by havok. This all works great.
It is important also to mention that i have 2 applications a server and a client. They both make use of a shared library (a hybrid). This hybrid code generates the rigid body i just described above. Therefore both client and server use identical code to generate the mesh.
It turns out that only in RELEASE on the client i always tunnel through the first 2 objects created in any level. To make it even more obscure, it only happens on certain machines on windows7. When i run the client in compatibiilty mode (XP + sp3) it works correct for the first 2 objects as well. Do note, it only happens for the first 2 objects created in any level, also only happens in release and only on certain machines in windows 7.
The code is compiled on a windows 7 xp64 bit machine.
I have verified that my application does not contain any memory faults by using visual leak debugger, gdebugger, ggcdebugger and also used hkMemoryInitUtil::initChecking(..) to make sure Havok has no memory faults.
Also, the compiler settings between client and release are exactly equal.
Do also note, that the graphical display in the game of the mesh is correct, but not only my own, also the visual dbugger of havok of both the server and the client shows correct mesh. Yet it just tunnels through the first 2 objects of ANY level (client only).
Im really breaking my mind around this problem. only reasons i could think of was different compiler settings or intrinsic functions which are not used by the server which causes the bug to only appear in release on the client. But honestly i dont know.
Above, a screenshot of server, and below the client. Do note, i repeate it only occurs for the first 2 objects in release on certain machines in window 7.