xexuxjy / bullet-xna

Automatically exported from code.google.com/p/bullet-xna
Other
21 stars 5 forks source link

Assert on collision #9

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1.Assert on PooledType.Free

---- Assert Long Message ----

   at BulletXNA.LinearMath.PooledType`1.Free(T obj) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\LinearMath\PooledType.cs:line 24
   at BulletXNA.BulletCollision.SphereTriangleCollisionAlgorithm.Cleanup() in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\SphereTriangleCollisionAlgorithm.cs:line 70
   at BulletXNA.BulletCollision.ConvexTriangleCallback.ProcessTriangle(IndexedVector3[] triangle, Int32 partId, Int32 triangleIndex) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\ConvexConcaveCollisionAlgorithm.cs:line 449
   at BulletXNA.BulletCollision.BvhTriangleMeshShape.MyNodeOverlapCallback.ProcessNode(Int32 nodeSubPart, Int32 nodeTriangleIndex) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionShapes\BvhTriangleMeshShape.cs:line 328
   at BulletXNA.BulletCollision.QuantizedBvh.WalkStacklessQuantizedTree(INodeOverlapCallback nodeCallback, UShortVector3& quantizedQueryAabbMin, UShortVector3& quantizedQueryAabbMax, Int32 startNodeIndex, Int32 endNodeIndex) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\BroadphaseCollision\QuantizedBvh.cs:line 717
   at BulletXNA.BulletCollision.QuantizedBvh.ReportAabbOverlappingNodex(INodeOverlapCallback nodeCallback, IndexedVector3& aabbMin, IndexedVector3& aabbMax) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\BroadphaseCollision\QuantizedBvh.cs:line 1014
   at BulletXNA.BulletCollision.BvhTriangleMeshShape.ProcessAllTriangles(ITriangleCallback callback, IndexedVector3& aabbMin, IndexedVector3& aabbMax) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionShapes\BvhTriangleMeshShape.cs:line 143
   at BulletXNA.BulletCollision.ConvexConcaveCollisionAlgorithm.ProcessCollision(CollisionObject bodyA, CollisionObject bodyB, DispatcherInfo dispatchInfo, ManifoldResult resultOut) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\ConvexConcaveCollisionAlgorithm.cs:line 194
   at BulletXNA.BulletCollision.DefaultNearCallback.NearCallback(BroadphasePair collisionPair, CollisionDispatcher dispatcher, DispatcherInfo dispatchInfo) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\CollisionDispatcher.cs:line 361
   at BulletXNA.BulletCollision.CollisionPairCallback.ProcessOverlap(BroadphasePair pair) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\CollisionDispatcher.cs:line 323
   at BulletXNA.BulletCollision.HashedOverlappingPairCache.ProcessAllOverlappingPairs(IOverlapCallback callback, IDispatcher dispatcher) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\BroadphaseCollision\OverlappingPairCache.cs:line 265
   at BulletXNA.BulletCollision.CollisionDispatcher.DispatchAllCollisionPairs(IOverlappingPairCache pairCache, DispatcherInfo dispatchInfo, IDispatcher dispatcher) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\CollisionDispatcher.cs:line 190
   at BulletXNA.BulletCollision.CollisionWorld.PerformDiscreteCollisionDetection() in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletCollision\CollisionDispatch\CollisionWorld.cs:line 466
   at BulletXNA.BulletDynamics.DiscreteDynamicsWorld.InternalSingleStepSimulation(Single timeStep) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletDynamics\Dynamics\DiscreteDynamicsWorld.cs:line 811
   at BulletXNA.BulletDynamics.DiscreteDynamicsWorld.StepSimulation(Single timeStep, Int32 maxSubSteps, Single fixedTimeStep) in C:\Projects\gameprom\Slayer\SlayerXNA\ThirdParty\MonoGameEngine.Core\Physics\Engine\BulletDynamics\Dynamics\DiscreteDynamicsWorld.cs:line 147

Original issue reported on code.google.com by stm.p...@gmail.com on 19 Jul 2012 at 12:07

GoogleCodeExporter commented 9 years ago
Thanks.
I've checked in a new version of ConvexConcaveCollisionAlgorithm.cs that no 
longer trys to clear the collision algorithm twice. The only place that should 
call cleanup on the algorithm is in CollisionDispatcher.FreeCollisionAlgorithm

Original comment by xexu...@gmail.com on 19 Jul 2012 at 8:51