Commit Graph

47 Commits

Author SHA1 Message Date
ejcoumans
eb6664f7c2 issue with OS X and std::set, erase doesn't return an iterator. todo: check this 2006-09-19 07:06:23 +00:00
ejcoumans
d375a474b3 fixed broadphases after performance optimizations 2006-09-19 06:08:54 +00:00
ejcoumans
163948e351 strange, stl::set<>::iterator is a const iterator under Apple... 2006-09-19 05:14:11 +00:00
ejcoumans
84afe40064 changed version number, moved SphereSphere algorithm and decreased default number of rigidbodies from 3250 back to 250. 2006-09-19 04:58:11 +00:00
ejcoumans
8c023e764c started working on some serious performance improvements. now the union find is optimized, the broadphase add/remove overlapping pair was too slow. added a stl::set to keep track of overlapping pairs. this speeds up the set find/remove. work in progress.the SimpleBroadphase is broken. will be fixed tomorrow.
Did some tests with 3000 rigidbodies, works much smoother now :)
2006-09-19 02:59:30 +00:00
ejcoumans
60fe5affd7 island management bug 2006-09-15 00:01:19 +00:00
ejcoumans
0607bfe9de optimized the island management. It was unoptimized, and becomes a bottleneck for large amounts of objects. 2006-09-14 23:43:50 +00:00
ejcoumans
1a6333e709 2006-09-11 05:31:56 +00:00
ejcoumans
7b5da11662 dispatcher was missing actual implementation for user-registration function 2006-09-08 02:41:47 +00:00
ejcoumans
4365199a47 added optional striding to ConvexHullShape 2006-09-07 22:58:29 +00:00
ejcoumans
fa4fd1369c Added support for SHORT/WORD indices
Removed references to m_userPointer (in CollisionObject), called it m_userObjectPointer
increased view distance in glut demo file
2006-09-06 22:21:12 +00:00
ejcoumans
400376289c 2006-09-06 00:38:12 +00:00
ejcoumans
fa96109cd9 Exposed another glut method (the demos really require cleanup soon!)
First steps for a raycast-vehicle demo (far from finished)
2006-09-05 07:36:55 +00:00
ejcoumans
a0c157ed85 fixed memoryleak,
added RayTestSingle to CollisionWorld
prepared to add VehicleDemo
2006-09-04 21:28:32 +00:00
ejcoumans
1048793061 fixed collision bug involving meshes/compounds: always keep point with deepest penetration
increased default number of objects/overlaps in broadphase to 20k/60k
2006-09-04 18:54:36 +00:00
ejcoumans
b76e642506 fixed one performance problem with sleeping objects 2006-09-02 01:50:16 +00:00
ejcoumans
d36abec2a9 updated projectfiles for ColladaConverter, and added Cmake mention in doxygen frontpage 2006-09-02 00:01:26 +00:00
ejcoumans
e1b85d1969 Got a license from Intel for vtune. The first performance analysis showed an unexpected bottleneck:
apparently the UnionFind / island management had unexpected overhead. Added path compression to the UnionFind::find operation, and iterative over the actual islands, rather then over all number of objects.
2006-08-29 23:37:32 +00:00
ejcoumans
4cdcee8871 updated CMakeLists.txt to include LibXML and LibColladaDom, and use better naming for libs. This should allow autogeneration of visual studio projectfiles, and Apple XCode projectfiles for COLLADA_DOM demo. 2006-08-28 01:26:31 +00:00
ejcoumans
d931aae32f added basic CCD calculations for Compounds and non-convex (convex-versus-concave). 2006-08-11 04:10:37 +00:00
ejcoumans
16781831dc added initial support for per-triangle material properties in a non-convex mesh. needs testing. 2006-08-10 08:18:05 +00:00
ejcoumans
3a27e8b1bf Added preliminary CMake buildsystem support, it can autogenerate projectfiles/makefiles etc. Including Mac OS X Xcode.
This provides a better maintainable alternative to jam/msvcgen
2006-08-09 19:38:21 +00:00
ejcoumans
8bf47140fe prepare for AABB tree traversal for compound objects 2006-07-25 00:30:15 +00:00
ejcoumans
50a2694c5b more compounds work, the basics work. now some stackless tree-tree traversal is needed to speedup compound versus compound. 2006-07-24 23:06:59 +00:00
ejcoumans
fdaa3a7abc some work on compound collision shapes (not finished yet) 2006-07-24 05:22:56 +00:00
ejcoumans
faa1dc90be debug drawing for ParallelPhysicsEnvironment 2006-07-05 05:22:09 +00:00
ejcoumans
d2570694a9 added debug drawing for concave objects (draws overlapping triangles) 2006-07-05 05:03:09 +00:00
ejcoumans
62593f8b99 refactoring of TriangleMeshShape, introduced ConcaveShape, which allows for StaticPlaneShape and future landscape/heightfield shape 2006-07-03 22:41:19 +00:00
ejcoumans
a359212fb3 more work on parallel dispatching of simulation islands 2006-07-01 03:33:05 +00:00
ejcoumans
57e8bd87d1 updated version/projectfiles with new files 2006-07-01 00:34:43 +00:00
ejcoumans
2d80bae6e3 fairly large refactoring of dispatcher/simulation island management, to allow for parallel simulation. 2006-07-01 00:22:15 +00:00
ejcoumans
3a85557c29 Refactoring for parallel processing of islands, collision detection and constraint solving. 2006-06-30 00:41:09 +00:00
ejcoumans
9105c3af5a Refactoring:
Moved optional code to Extras: AlgebraicCCD,EPA,quickstep
Moved SimpleBroadphase data to OverlappingPairCache, and derive both SimpleBroadphase and AxisSweep3 from OverlappingPairCache.
Added ParallelPhysicsEnvironment (prepair more parallel mainloop)
Upgraded hardcoded limit from 1024/8192 to 32766/65535 (max objects / max overlapping pairs)
2006-06-29 20:57:47 +00:00
ejcoumans
7e9aa9d5f8 added notice that CompoundShape is placeholder, not implemented yet 2006-06-25 21:27:31 +00:00
ejcoumans
35c2da987e preparation for compound collision shapes 2006-06-25 19:53:07 +00:00
ejcoumans
93fda830d4 accidently made CollisionGroup filter/mask int, instead of short int 2006-06-25 19:40:59 +00:00
ejcoumans
c8a0c95195 added basic collision filtering, in broadphase. more advanced collision filtering should happen in CollisionDispatch::NeedsCollision
fixed CcdPhysicsDemo: don't pick static objects, it create a point 2 point constraint, which assert in jacobian generation
2006-06-25 19:36:50 +00:00
ejcoumans
09aeefe029 Allow multiple meshes to be used in the TriangleIndexVertexArray (this name is bad, is should be 'MeshArray'.
Renamed some 'box' into 'convex' in ConvexConcaveCollisionAlgorithm (it is generic for all convex objects, not for boxes).
2006-06-25 14:50:38 +00:00
ejcoumans
2eed545a70 enable to suspend and restore dynamics. also, catched the case where failed dynamics (resulting in infinite AABB sizes) doesn't mess up the entire simulation, it just get's deactivated (with a message that a simulation error happened) 2006-06-22 03:00:43 +00:00
ejcoumans
c5fdd98330 printf for debugging requires stdio.h 2006-06-21 21:04:01 +00:00
ejcoumans
94e94e995f enabled early exit for GJK 2006-06-21 05:35:16 +00:00
ejcoumans
51a645bb4a constraints between bodies merge constraint simulations (this fixes problems with deactivation/sleeping) 2006-06-17 15:22:06 +00:00
ejcoumans
b4df21acb5 added cylinder support in ColladaDemo, rendering of Cylinder, updated .dae files. 2006-06-09 00:17:20 +00:00
ejcoumans
e31711a4d9 try to catch a rare failure case (debugmode-printf) 2006-05-26 20:25:18 +00:00
ejcoumans
2529aebc79 this should not be necessary, but it happened. todo: why doesn't gjk terminate. there are 2 rare cases, one with 'nan'/undefined separating axis/distance, and another with rather big distances. 2006-05-26 19:47:46 +00:00
ejcoumans
39c5f29fd0 added new convex trianglemesh shape 2006-05-26 00:30:16 +00:00
ejcoumans
e061ec1ebf moved files around 2006-05-25 19:18:29 +00:00