Commit Graph

452 Commits

Author SHA1 Message Date
erwin.coumans
e6202f58ad 1)Added SCE Physics Effects boxBoxDistance
BulletMultiThreaded/NarrowPhaseCollision makes use of this boxBoxDistance.
Cache some values in src/BulletMultiThreaded/SpuContactManifoldCollisionAlgorithm.cpp, to avoid DMA transfers

2) Added btConvexSeparatingDistanceUtil: this allows caching of separating distance/vector as early-out to avoid convex-convex collision detection.
btConvexSeparatingDistanceUtil is used in src/BulletCollision/CollisionDispatch/btConvexConvexAlgorithm.cpp and can be controlled by btDispatcherInfo.m_useConvexConservativeDistanceUtil/m_convexConservativeDistanceThreshold

3) Use BulletMultiThreaded/vectormath/scalar/cpp/vectormath/scalar/cpp/vectormath_aos.h as fallback for non-PlayStation 3 Cell SPU/PPU platforms (used by boxBoxDistance).
Note there are other implementations in Extras/vectormath folder, that are potentially faster for IBM Cell SDK 3.0 SPU (libspe2)
2008-10-20 20:12:39 +00:00
erwin.coumans
4cbb3f2e7b Added btGhostObject and btPairCachingGhostObject functionality.
It is a fast way to keep track of overlapping objects in an area, and doing rayTest and convexSweepTest for overlapping objects, instead of btCollisionWorld::rayTest/convexSweepTest.

Updated KinematicCharacterController to use btPairCachingGhostObject.
2008-10-18 01:33:23 +00:00
erwin.coumans
60ce828419 Autoformat selection for soft body, btDbvt related classes (no code change, just layout using Visual Studio) 2008-10-15 18:39:27 +00:00
erwin.coumans
cac172d422 Use consistent rayFrom/rayTo API for rayTest for btDbvt and btSoftBody, instead of rayCast/collideRAY(origin,direction). This means RayFromToCaster has a fraction [0..1] instead of distance [0..INF]
Renamed collideRay -> rayTest to reflect change to (rayFrom,rayTo) interface.
Re-use btRayAabb2 function from src/LinearMath/btAabbUtil2.h in btDbvt instead of duplicated implementation.
2008-10-15 18:30:35 +00:00
erwin.coumans
81fcd03af5 Fix BenchmarkDemo issues with double precision build 2008-10-14 20:48:05 +00:00
erwin.coumans
fffca75e9f Make raycast benchmark default, to show improved raycasting performance.
Add rayTest to btBroadphaseInterface, and implement efficient version for btDbvtBroadphase to accelerate raycasting.
btAxisSweep3, btSimpleBroadphase and btMultiSapBroadphase implement brute-force method (as before). For now, it is recommended to use btDbvtBroadphase for fastest world raycast.
2008-10-14 06:23:45 +00:00
erwin.coumans
4624bde28b updated autogenerated msvc projectfiles, minor fix in Gimpact/btGImpactShape.h (shapeType) and btWin32ThreadInterface. 2008-10-11 16:23:10 +00:00
erwin.coumans
374e97fa8b even more build system changes. 2008-10-11 06:11:26 +00:00
erwin.coumans
e4ed38e7f6 more build system changes, to reflect Gimpact/BulletMultiThreaded move from Extras to src 2008-10-11 05:52:45 +00:00
erwin.coumans
22a79e61b1 updated Jamfile build system for reorganized files/folders 2008-10-11 05:23:00 +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
36fa9f3382 Commit missing Makefile.am 2008-10-02 22:34:19 +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
9f28b2bc12 Improve damping formula in btRigidBody::applyDamping
Thanks to sparkprime, see http://code.google.com/p/bullet/issues/detail?id=74
Fixed btCompoundShape/btCapsuleShape/btGImpactShape for missing m_shapeType, and added an assert in DemoApplication::localCreateRigidBody for invalid shape types.
2008-09-30 00:34:58 +00:00
rponom
6a21ee6146 2008-09-19 21:08:13 +00:00
erwin.coumans
58e1e9f049 updated version to 2.72, fix a compilation issue. 2008-09-12 00:59:16 +00:00
erwin.coumans
fae48b5c25 some more improvements to support basic CCD motion clamping 2008-09-11 23:50:50 +00:00
rponom
8ffbb21d48 ForkLiftDemo changed to reflect recent changes in btHingeConstraint 2008-09-11 20:34:40 +00:00
erwin.coumans
569946a96f added some debugging variable for CCD motion clamping 2008-09-11 18:44:30 +00:00
erwin.coumans
93d1d24234 Some changes in rendering, to get shadows for trimeshes
Add dynamic aabb tree (btDbvt) optimization for btCompoundShape/btCompoundCollisionAlgorithm
Add btTransformAabb util, todo: deploy it throughout the codebase
2008-09-10 05:20:04 +00:00
erwin.coumans
d61a3aac7f Add btCompoundShapes to concave triangle mesh, to QA this report. Couldn't find any issue:
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2557
2008-09-06 16:48:47 +00:00
erwin.coumans
33565d399e Make ForkLiftDemo easier to use (shift+cursor keys to control fork)
Updated projectfiles
2008-09-06 16:35:49 +00:00
erwin.coumans
5e92e6b661 updated cmake for ForkLiftDemo, removed DinoDemo (it breaks cmake due to c/c++ mixing) 2008-09-06 15:43:20 +00:00
rponom
02112b0687 ForkLift demo added 2008-09-06 00:56:56 +00:00
erwin.coumans
82b64b0565 exclude BulletMultiThreaded from 64-bit builds 2008-09-05 20:56:50 +00:00
erwin.coumans
971a060bbb Define btAssert as empty in non-debug builds.
GL_DEPTH_BUFFER_BIT -> GL_DEPTH_TEST, thanks to Mihail Isakov, http://code.google.com/p/bullet/issues/detail?id=86
2008-09-05 06:22:18 +00:00
erwin.coumans
cef07cfa20 Revert to max 1 substep by default: increased maxSubSteps to 10 make debug version way too slow.
Use btDbvtBroadphase in BasicDemo and CcdPhysicsDemo.
2008-09-05 01:41:32 +00:00
erwin.coumans
359c84d3b3 Fix previous commit, accidently removed some aabbMin/aabbMax assignments.
move margin calculation for aabb before basis transform.
2008-09-05 00:26:02 +00:00
erwin.coumans
d8a5bf2c9c Calculation of bounding box: margins should be added before basis transform.
Disable btSphereBoxCollisionAlgorithm, it is broken.
More fixes for btSimpleBroadphase
Moved quickstep to Extras/quickstep folder, so developers don't get confused which constraint solver is default.
2008-09-04 22:53:24 +00:00
john.mccutchan
32bf51aa47 Fixed memory leaks in ConvexDecomposition and ColladaConverter libraries
Added ConvexDecompositionDemo to CMake build
2008-08-28 17:36:50 +00:00
erwin.coumans
5fd1a69f32 Added some comments for stepSimulation and fixed bug: uninitialized variable m_shapeDrawer(drawer) in DebugCastResult.h 2008-08-28 02:01:23 +00:00
erwin.coumans
07b577fd86 make debugDrawWorld virtual for btSoftRigidDynamicsWorld
Move btSoftBodyWorldInfo to public, instead of nested, so it can be easier forward declared.
See http://code.google.com/p/bullet/issues/detail?id=78

Add get methods for damping/thresholds, see http://code.google.com/p/bullet/issues/detail?id=77
2008-08-19 16:09:04 +00:00
erwin.coumans
05e64d6715 Add/fix CMake build support for BulletDinoDemo, thanks to slackydeb (http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2465 ) 2008-08-09 21:30:21 +00:00
erwin.coumans
9c776c6ed0 some finishing touches for drawing shadows/clusters/textures. 2008-08-01 06:11:11 +00:00
erwin.coumans
23d9483ea9 use k/l to steer Bunny car (avoid keyboard conflicts) 2008-08-01 02:45:13 +00:00
erwin.coumans
e61e1878cd start with Bunny car 2008-08-01 02:43:30 +00:00
erwin.coumans
e2daa1c277 fixes to compile on OSX, minor addition to ChangeLog 2008-08-01 02:19:26 +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
af4520801b + Fix btSubsimplexConvexCast
Thanks to Nacho, http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2422)
Fix in rendering, GL_STENCIL
+ btTriangleIndexVertexArray indices should be unsigned int/unsigned short int,
+ Made InternalProcessAllTriangles virtual, thanks to 
Both thank to Fullmetalcoder, http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2401
+clamp impulse for btPoint2PointConstraint
Thanks to Martijn Reuvers, http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2418
+ Free memory of bvh, pass in scaling factor (optional)
Thanks to Roy Eltham, http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2375
2008-07-31 19:44:28 +00:00
erwin.coumans
3ca977e39f Patch by Nathanael Presson: (needs some more work, some of the demos don't show properly (RayCaster, CollisionInterfaceDemo,'g' key is already occupied in ConcaveDemo etc)
btDbvtBroadphase:
- Fixed a performance issues reported by 'reltham'
- Added btDbvtBroadphase::optimize() for people who want good performances right away or don't do dynamics.
- fixed compilation issues when DBVT_BP_PROFILE was set.

btSoftBody:
- Fixed singular matrix issues related to polar decomposition (flat meshes).

DemoApplication:
- Shadows (enable/disable through 'g' or DemoApplication::setShadows(bool)).
- Texture can be enable/disable through 'u'

CDFramework:
- fixed compilation issues.
2008-07-28 04:33:55 +00:00
erwin.coumans
d71f8d6623 Added several updates for btSoftBody: convex cluster collision detection, new constraints, new demos (only enabled in SoftBodyDemo, todo for AllBulletDemos) etc.
Thanks a lot to Nathanael Presson for this update.
2008-07-22 02:22:01 +00:00
erwin.coumans
1c0fa00bc7 + provide access to 'root' collision shape, in case the original collision shape is temporarily replaced by a child collision shape.
+ added MultiMaterialDemo showing how to use the new btTriangleIndexVertexMaterialArray.
Thanks to Alex Silverman for this contribution!
2008-07-10 22:19:30 +00:00
erwin.coumans
b66e5350d0 rename HasHit method to hasHit
rename AddSingleResult to addSingleResult
moved collision filtering for btCollisionWorld::rayTest and btCollisionWorld::convexSweepTest from argument to the callback needsCollision
2008-07-09 23:30:21 +00:00
erwin.coumans
b9bc96e22b use a btCollisionWorld instead of btDynamicsWorld, thanks reltham for the feedback
http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2317&p=9197#p9197
2008-07-09 18:41:41 +00:00
erwin.coumans
2c224b41c5 bump up the version to 2.70, and add (non-working) button for OSX template 2008-07-09 05:13:18 +00:00
erwin.coumans
dcd57f333b + improved KinematicCharacterController
+ improved btSubsimplexConvexCast, btContinuousConvexCollision and btGjkConvexCast to support configuration that start in touching/penetration, required for 'sliding'.
+ added files to CMakeLists.txt for CharacterController
+ bump up version to 2.70 (preparation for beta)
2008-07-09 00:08:49 +00:00
erwin.coumans
76bac83937 Added new files to CMakeLists.txt for CharacterDemo
Use relative path, #include "../BspDemo/BspLoader.h"
2008-07-03 23:47:38 +00:00
john.mccutchan
a7f9bb8c8a More KinematicCharacterController work. 2008-07-03 22:27:49 +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
john.mccutchan
de1f2631f4 Abstracted character controller interface
Renamed old character controller to DynamicCharacterController
First start at KinematicCharacterController. Still has bugs.
2008-07-02 23:19:02 +00:00