Commit Graph

60 Commits

Author SHA1 Message Date
erwin.coumans
81f04a4d48 fix: some file didn't have the svn:eol-style native yet 2010-03-06 15:23:36 +00:00
erwin.coumans
1c0ec85c32 Retired the Jam build system (and msvcgen). CMake is currently the preferred build system on Windows, Mac and UNIX
(autotools files are still left for now)
2010-02-20 15:47:20 +00:00
erwin.coumans
6a8a8ad39f more improvements for msvc cmake build system and test for autogenerated cmake projectfiles for msvc 2008 in msvc/2008 (with relative paths) 2010-02-08 20:35:04 +00:00
erwin.coumans
f4c4e91904 more cmake fixes 2009-11-17 03:03:27 +00:00
erwin.coumans
dcfb23dc13 update build for btConvex2dShape functionality
use btDbvtBroadphase in HelloWorld demo, it is the recommended broadphase
2009-09-17 20:17:14 +00:00
erwin.coumans
badf723257 Replace all hardcoded 1e30(f) by BT_LARGE_FLOAT, defined in btScalar.h as 1e18(f) so that its square still fits in FLT_MAX
Thanks to Ole K. for reporting! http://code.google.com/p/bullet/issues/detail?id=206
2009-05-23 02:15:54 +00:00
erwin.coumans
1526691f89 fixed memory leaks in ForkLiftDemo/VehicleDemo
Thanks to mi076 for report+fix: http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2652
Minor syntax error fix in a Jamfile
2009-05-14 17:03:42 +00:00
erwin.coumans
33029ad996 updated demos -> ALT + mouse uses Maya-style controls, replaced BMF_Fonts by GLDebugFont
fix debug drawing of btMultiSphereShape
added box2d demo
added experimental gpu 2d demo
2009-05-09 19:27:14 +00:00
john.mccutchan
a8ec916af0 Added Height Field Fluid Demo to Bullet. All code stored in the Demos/HeightFieldFluidDemo directory for now.
Please see HfFluidDemo.cpp for examples of how to use the height field fluid along with buoyant collision shapes.

The implementation is still lacking in my ways:
1) Need to complete more collision algorithms for buoyant collision shapes
2) Support compound buoyant shapes
3) The buoyancy model isn't that great
4) Fluid volume can be lost over time
2009-01-08 22:53:23 +00:00
erwin.coumans
5383ed4930 + need to reset rigid body using 'setCenterOfMassTransform' to reset world inertia tensor
+ fixes in compound algorithm -> recompute contact points
+ add debug drawing to some demos.
+ revert btJacobianEntry change
+ replace dCROSSMAT by btVector3::getSkewSymmetricMatrix
2008-12-02 04:01:56 +00:00
erwin.coumans
2daf428386 updated CMake support: remove Lib prefix, to facilitate Apple Framework support, add App prefix for demos
See discussion here: http://code.google.com/p/bullet/issues/detail?id=129
2008-11-06 06:54:35 +00:00
john.mccutchan
9e8410dbae Add libgimpact, libgimpactutils, libglui, libconvexdecomposition, soft body demo, all bullet demos to autotools build 2008-10-03 23:01:04 +00:00
john.mccutchan
e431450620 Initial support of Autoconf / Automake build system
Now running ./autogen.sh and ./configure will produce both Makefiles built from Autoconf and Automake 
as well as Jam build files.
2008-10-02 22:23:01 +00:00
erwin.coumans
4894f24c9a Fixes for FPU exceptions, thanks to Phil Knight for reporting and John McCutchan for fix/workarounds.
Added new cluster collision methods for soft bodies, thanks to Nathanael Presson.
Enable/disable textures/shadows for specific demos.
2008-08-01 01:04:45 +00:00
erwin.coumans
65116fd3d3 Minor cleanup of CMakeLists.txt files, it works better with Code::Blocks+MinGW (glut32,opengl32,glu32) 2008-07-03 21:21:44 +00:00
erwin.coumans
f8e5481612 Added method to collect all persistent contact manifolds, given a btBroadphasePair (collision algorithm)
virtual	void	getAllContactManifolds(btManifoldArray&	manifoldArray)
See Demos/CharacterDemo/CharacterDemo.cpp for example usage of getAllContactManifolds
Added btDbvtBroadphase to btBulletCollisionCommon.h headerfile
Enable soft body vs concave (albeit slow)
Improved contact point debug rendering (moved from constraint solver into debugDrawWorld)
2008-05-24 04:23:00 +00:00
erwin.coumans
fd5057ec5a fixed build/project files 2008-04-10 21:28:37 +00:00
ejcoumans
fc333d2e18 updated Jam and CMake build files for new Extras/ConvexHull library 2008-02-13 08:15:58 +00:00
ejcoumans
eeb78b8d45 free memory for btShapeHulls, keep track of it in GL_ShapeDrawer.
move btShapeHull and btConvexHull into its own library in Extras/ConvexHull (it allocates memory using mem/delete and refactoring into using btAlignedAlloc/Free takes too much time)
fix heightfield / btOptimizedBvh for quantization, so that raycast can use quantized aabb (clamp up for maxima and down for minima)

work-in-progress (update projectfiles etc)
2008-02-13 07:14:19 +00:00
ejcoumans
9eb0340dab fixed minor graphics issues, related to recent camera initialization changes 2008-02-07 08:49:29 +00:00
ejcoumans
d051e2eacb First commit of 2008, Happy New Year!
Add option to compile without btClock and without profiling: comment out USE_BT_CLOCK, and #define BT_NO_PROFILE
Fixed typo/case in #include "LinearMath/btQuickProf.h", in SpuParallelSolver.cpp
Removed unnecessary files from libxml CMakeLists.txt
2008-01-03 04:42:00 +00:00
ejcoumans
17a214a2b3 - Added btRigidBodyConstructionInfo, to make it easier to set individual setting (and leave other untouched) during rigid body construction.
This was harder using default arguments. Thanks Vangelis Kokkevis for pointing this out.
- Fixed memoryleak in the ConstraintDemo and Raytracer demo.
- fixed issue with clearing forces/gravity at the end of the stepSimulation, instead of during internalSingleStepSimulation.
Thanks chunky for pointing this out: http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=1780
- Disabled additional damping in rigid body by default, but enable it in most demos. Set btRigidBodyConstructionInfo m_additionalDamping to true to enable this.
- Removed obsolete QUICKPROF BEGIN/END_PROFILE, and enabled BT_PROFILE. Profiling is enabled by default (see Bullet/Demos/OpenGL/DemoApplication.cpp how to use this).
User can switch off profiling by enabling define BT_NO_PROFILE in Bullet/src/btQuickprof.h.
2007-12-17 04:26:36 +00:00
ejcoumans
f1be4ab221 only update aabb of active objects, thanks Peter Tchernev for reporting (http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=1764 )
move debug aabb rendering from updateAabb to debugDrawWorld
2007-12-10 02:18:38 +00:00
ejcoumans
c1a2debd3b demo cleanup part 4 (fixed leaks in vehicle demo) 2007-12-07 02:12:00 +00:00
ejcoumans
cab75b53ec added hierarchical profiling (needs more cleanup)
avoid dynamic allocations in btRaycastVehicle
2007-11-21 03:00:40 +00:00
ejcoumans
fd1e672fcb updated demos to show debug display with new AllBulletDemos (AllInOne),
added btDynamicsWorld::getWorldType
2007-10-25 07:07:12 +00:00
ejcoumans
2a75e186ec updated CMake buildfiles 2007-10-25 05:31:34 +00:00
ejcoumans
5f5dfcf6b8 added btGetVersion(), return integer without the fraction: for example 2.64 returns 264.
moved more demos into AllBulletDemos
2007-10-25 04:37:48 +00:00
ejcoumans
e7caaa28d3 re-organized memory (stack and pool) allocators. this lets the user pass in their own memory allocators. 2007-10-20 02:23:39 +00:00
ejcoumans
43b0ecd71a 2007-10-14 00:39:01 +00:00
ejcoumans
87df3d0f32 Based on feedback from another professional game company, there are several improvements, including some API change...
Some dynamic memory allocations have been replace by pool allocation or stack allocations.
quantized aabb versus quantized aabb overlap check is made branch-free (helps a lot on consoles PS3/XBox 360)
Collision algorithms are now created through a new btDefaultCollisionConfiguration, to decouple dependency (this is the API change):
Example:
	btDefaultCollisionConfiguration* collisionConfiguration = new btDefaultCollisionConfiguration();
	m_dispatcher = new	btCollisionDispatcher(collisionConfiguration);
2007-09-08 05:40:01 +00:00
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
5f8873c339 support diamondsubdivision (thanks Jay for contribution)
support user-defined broadphase collision filtering (thanks Marten)
make sure btSimpeDynamicsWorld doesn't use cache friendly optimization in the solver (added an assert, and updated BasicDemo)
2007-06-29 22:13:15 +00:00
ejcoumans
cad28a8b35 allow for float data, and prepare for 'quad edge flip', either re-use the first triangle vertex, or second (re-use index 00 or 01) 2007-06-27 19:56:18 +00:00
ejcoumans
9099d6bed5 updated vehicle demo to load heightfield data from file 2007-06-27 19:12:09 +00:00
ejcoumans
59cb275c9c basic support for height fields. They are producing temporary triangles, similar to the plane shape.
VehicleDemo demonstrates heightfield support.
2007-06-27 03:21:00 +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
2db8bfa3d6 Fix (needs more testing) in btRigidBody::setCenterOfMassTransform, assign m_interpolationWorldTransform = xform; instead of m_worldTransform;
Thanks Jay for reporting
Added braking capability to btRaycastVehicle, see Bullet/Demos/VehicleDemo/VehicleDemo.cpp
Added glutKeyboardUpFunc, for vehicle demo (keep accelerating/breaking, until key released/UP). Hope this is compatible with most GLUT implementations.
2007-04-22 15:23:20 +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
ejcoumans
e610598d33 - Added compressed/quantized AABB tree, 16 bytes per node, while supporting 32-bit (triangle) indices. Should be faster and smaller then original version (quantized aabb check is done in integer space)
Original aabb nodes are 44 bytes (with full floating point precision and additional part index)
- added meter-unit scaling support in ColladaConverter.cpp
2007-02-25 06:11:23 +00:00
ejcoumans
818b672f60 updated autotools support for make, while keeping jam support. other options are cmake and msvc builds. 2006-12-17 05:35:41 +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
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
06a1de2574 updated build files for GIMPACT 2006-11-12 07:05:37 +00:00
ejcoumans
56e135874b added angular limits to the Generic D6 constraint. Works for small angles. Will add a check for different combinations, and use different extraction of ordering of rotation from the diff quaternion.
Improved vehicle interpolation of wheels, and added Z-up axis option for the Demo
made 'getWorldTransform' const method in btMotionState
added future 'deactivationCallback'(not used yet)
2006-11-10 04:00:16 +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
4ab4fc8bb1 Integrated fixes for Solaris from Noerghel, http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=673 2006-11-09 15:27:02 +00:00
ejcoumans
5102b7ac60 added very basic debug drawing for vehicle wheels, and updated raycast in world to do ray-aabb instead of aabb-aabb 2006-11-09 04:43:18 +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
ejcoumans
07873854a4 more small refactoring: some methods were still upper-case. 2006-11-03 04:32:48 +00:00