Commit Graph

34 Commits

Author SHA1 Message Date
ejcoumans
1f7646f72a Refactoring to enable multi SAP broadphase.
This was already planned, and Pierre Terdiman recent thread motivated me to decouple the paircache from the sweep and prune.
http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1329
2007-08-02 23:48:46 +00:00
ejcoumans
cf2337ed7b - Fixed a bug in btAxisSweep3 (sweep and prune) related to object removal. Only showed up when at least one btStaticPlaneShape was inserted.
Thanks tbp for more details on reproducing case.
- Fixed issue with full 32bit integers in btAxisSweep3 (define BP_USE_FIXEDPOINT_INT_32), it used only 65536 for quantization, it should use full integer space (0xffffffff)
- Added 'getForwardVector' and getCurrentSpeedKmHour utility functions to btRaycastVehicle
- Fixed local scaling issues (btConvexTriangleMeshShape, btBvhTriangleMeshShape, removed scaling from btMatrix3x3). Thanks Volker for reporting!
- Added second filename search, so that starting BspDemo and ConvexDecompositionDemo from within Visual Studio (without setting the starting path) still works
2007-05-20 16:21:14 +00:00
ejcoumans
ceee6d7e14 renamed ${OPENGL_glU_LIBRARY} into ${OPENGL_glu_LIBRARY}
This allows MinGW32/MSYS makefiles (using cmake -G "MINGW Makefiles") to build (used to have a link error against gluLookAt etc)
2007-04-29 18:26:32 +00:00
ejcoumans
054d672592 - removed STL from the Bullet library: replace std::vector by btAlignedObjectArray. Also removed the std::set for overlapping pair set, and turned it into an overlapping pair array. The SAP only adds objects, never removed. Removal is postponed for during traversal of overlapping pairs (duplicates and non-overlapping pairs are removed during that traversal).
- added heap sort and binary search/linear search to btAlignedObjectArray
- fixed wrong cast, thanks Hamstray, http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1015
2007-03-06 09:59:17 +00:00
sjbaker
db573e4a59 Clean up about a bazillion compilation warnings. 2006-12-22 02:33:42 +00:00
ejcoumans
df9230327c Contribution to add optional double precision floating point support. Define BT_USE_DOUBLE_PRECISION for all involved libraries/apps. 2006-12-16 05:51:30 +00:00
ejcoumans
f9832f6b88 updated build systems/GPU_physics for Mac OS X 2006-12-08 22:04:02 +00:00
ejcoumans
bf591b44ec Replaced most STL std::vector with btAlignedObjectArray.
Same interface but less features (push_back, pop_back, clear, size, [] etc).
To prepare for SIMD/SSE code: Added 		#define ATTRIBUTE_ALIGNED16(a) __declspec(align(16)) a
2006-12-06 04:22:36 +00:00
ejcoumans
6738ed329d ASSERT -> btAssert
Added btStackAlloc to Bullet (right now only used by btGjkEpa)
removed default constructors of btCollisionWorld/btDiscreteDynamicsWorld, to reduce link-time dependencies
2006-11-29 01:52:09 +00:00
ejcoumans
86c27a7c9d Work on fixing some GJK issues reported by Pierre Terdiman (thanks Pierre for the testbed!)
Improved this penetration test with more verbose output
retrieve worldtransform from motionstate when rigidbody gets motionstate assigned
2006-11-11 23:59:51 +00:00
ejcoumans
8cbd721a1f added some brute-force way to shrink convex polyhedra (to compensate collision margin)
made Extra/EPA compile again, updated Pierre's testbed to compile out-of-the-box
2006-11-11 03:22:15 +00:00
ejcoumans
442ce2ec09 updated VehicleDemo to show Z as up-axis, rather then Y.
proper gravity for BspDemo
2006-11-09 19:55:14 +00:00
ejcoumans
c3ed55057c - added linear limits to btGeneric6DofConstraint and made sure the linear axis are in local space of objectA
- use microseconds instead of milliseconds for deltatime
2006-11-07 02:32:52 +00:00
sjbaker
6c61060339 Cleaned up some compile-time warnings. 2006-11-04 15:34:56 +00:00
ejcoumans
33b3ec94f1 more fixes, related to introduction of btMotionState, and using realtime timestep 2006-10-18 04:01:07 +00:00
ejcoumans
3a6942fb91 processed a lot of feedback: added 'realtime' simulation with fixed substeps (and clamping maximum number of substeps), this means that when stepSimulation is called with smaller timesteps then 'fixed substep' the motionstate is interpolated.
renamed m_ccdSweptSphereRadius,
enabled wireframe debugDrawObject (using debugDrawer)
2006-10-18 03:28:42 +00:00
ejcoumans
a337372905 added first draft of C-API, btConvexHullShape takes float* instead of btPoint*, added getGravity to btRigidBody 2006-10-11 06:07:14 +00:00
ejcoumans
bf847b839a another large series of changes, related to the refactoring.
CompoundShapes are tricky to manage with respect to persistent contact points and swapped order of btCollisionObjects,
During dispatch, finding an algorith etc. order can be swapped.
fixed several other issues, related to SimpleBroadphase (removing a proxy was not working)
2006-10-06 05:22:13 +00:00
ejcoumans
323a1046fd Cleaned up/simplified construction of a btRigidBody
Fixed memoryleak in btOptimizedBvh (delete []m_contiguousNodes;)
Changed DemoApplication::localCreateRigidBody, so it adds the rigidbody to the btDynamicsWorld.
Added check for duplicate objects in world when adding.
Added assert to prevent setLinearVelocity on static rigidbodies
Added btCollisionFilterGroups to btBroadphaseProxy
removed duplicate 'btBroadphaseProxy*	m_broadphaseProxy;' in btRigidBody
2006-10-04 23:46:27 +00:00
ejcoumans
dcf007ca38 more refactoring for CMake buildsystem 2006-09-30 02:51:35 +00:00
ejcoumans
d38549aa54 more refactoring, removed PhysicsInterface, cleaned up demos to make use of btDynamicsWorld derived classes.
removed two cached optimizations, type in btTransform and cached inverse transform (todo: test performance impact)
committed fixes that make the code adhere to 'who creates it, also destroys it'
2006-09-30 01:36:39 +00:00
ejcoumans
2b1657b1dd Refactoring: another huge number of changes, renamed methods to start with lower-case. 2006-09-28 01:11:16 +00:00
ejcoumans
eb23bb5c0c merged most of the changes from the branch into trunk, except for COLLADA, libxml and glut glitches.
Still need to verify to make sure no unwanted renaming is introduced.
2006-09-27 20:43:51 +00:00
ejcoumans
0e04cfc806 First stage in refactoring Bullet: moved Bullet Collision and Dynamics and LinearMath into src folder, and all files in Collision Detection and Dynamics have bt prefix.
Made all buildsystems to work again (jam, msvc, cmake)
2006-09-25 08:58:57 +00:00
sjbaker
f1627677df Fixed over 500 compile warnings. Mostly:
* Unused variables.
* Missing newlines at ends of #included files.
* signed int loop variables where the termination condition is an unsigned 'get number of' function.
* 'NULL' used inappropriately for an integer or character constant (NULL is a pointer)
* abstract base classes with no virtual destructor.
* Floating point constants used to initialise integer variables.
2006-09-23 14:51:54 +00:00
ejcoumans
7dea1a911c filename fixes 2006-09-20 03:48:58 +00:00
ejcoumans
43370aaa4f first step in refactoring/cleaning up demos 2006-09-11 05:31:22 +00:00
ejcoumans
a27c35ecaa 2006-09-11 05:30:55 +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
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
8cd999a189 changed filename for msvc 2006-08-16 14:03:39 +00:00
ejcoumans
e11b86cf4c endian-check bug? 2006-08-11 23:38:38 +00:00
ejcoumans
f43911f9d0 added CMake file 2006-08-11 23:27:19 +00:00
ejcoumans
e2b6d4ee65 some changes related to BspDemo 2006-08-11 23:01:25 +00:00