Commit Graph
3457 Commits
Author SHA1 Message Date
erwin.coumans 14ba3eaff7 rename from .c to .cpp, and updated 23 year old IFF source code (1985) 2008-10-26 23:47:35 +00:00
erwin.coumans 2a721c7489 Updated original EA-IFF-85 files to read and write Interchange File Format files.
Plan is to convert COLLADA XML into IFF, for faster, more compact and easier to read and parse files.
Reading/writing code is a few hundred lines of code, instead of COLLADA-DOM and libxml combo.
So it would be suitable as a run-time format for platforms ranging from iPhone to PlayStation 3.
Relevant physics data (and perhaps other data) will be converted from COLLADA -> IFF. 
We could call the resulting files COLLADA binary IFF -> CLIFF.
2008-10-26 23:04:43 +00:00
erwin.coumans 92c69ddefa added missing files to build systems for CMake and Automake (Makefile.am still needs to add additional include directory for BulletMultiThreaded, for vectormath) 2008-10-21 19:06:29 +00:00
erwin.coumans a05ae6e715 added src/BulletMultiThreaded/vectormath/scalar/cpp to include path for BulletMultiThreaded module 2008-10-21 19:05:50 +00:00
erwin.coumans 0d911a6c06 added missing vectormath <-> Bullet conversion file 2008-10-21 18:32:21 +00:00
nicola.candussi 557ff39996 added image for the Nail constraint 2008-10-21 10:37:43 +00:00
erwin.coumans c508711108 remove GIMPACT and added new dNailConstraint files to Dynamica Maya plugin projectfile 2008-10-21 04:35:30 +00:00
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
nicola.candussi b95810245f Added constraint framework, and the nail contraint 2008-10-20 10:43:18 +00:00
erwin.coumans c986721fb6 Added btGhostObject to projectfiles
btGhostObject can be used for character control, fast short-ray tests, explosions, collision trigger zones etc
See Demos/CharacterDemo/KinematicCharacterController.* for example use. We add some explosion demo before next release.
2008-10-18 05:29:31 +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
id0x1234 7f52613c45 Fixed Cluster::m_ndamping issue. 2008-10-17 12:44:19 +00:00
erwin.coumans b48d05d52a Preliminary adding btGhostObject.
It can be useful for collision sensors, explosion objects, character controller etc.

Similar to Havok phantom object.
2008-10-16 22:29:38 +00:00
erwin.coumans b32a0e3491 Removed ray-AABB slopes code again, we are not using it and it is archived in Subversion repo now. 2008-10-16 20:19:01 +00:00
erwin.coumans 947a44452d Removed ray-AABB slopes code again, we are not using it and it is archived in Subversion repo now. 2008-10-16 20:18:41 +00:00
erwin.coumans e627f38a28 Removed ray-AABB slopes code again, we are not using it and it is archived in Subversion repo now. 2008-10-16 20:18:23 +00:00
erwin.coumans 6fcd824524 Applied filtering flags for CCD Motion Clamping, thanks to Bbilz, see http://www.bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2736 2008-10-16 20:17:56 +00:00
erwin.coumans 945b299e56 some rayTest improvements in btDbvt::rayTestInternal, it avoids/reduces memory allocations during stack allocation (by sharing a persistent m_stack)
and rayTestInternal re-uses precomputed invRayDirection/signs.
also did some performance comparison with different ray-AABB test, from 
http://jgt.akpeters.com/papers/EisemannEtAl07/

In short: it is faster, but it is not clear how to cull ray segments using ray slopes: when rays starts inside the AABB, we get a negative t value, but negatives also get false t-values...
2008-10-16 20:01:02 +00:00
erwin.coumans 675c45f42d some rayTest improvements in btDbvt::rayTestInternal, it avoids/reduces memory allocations during stack allocation (by sharing a persistent m_stack)
and rayTestInternal re-uses precomputed invRayDirection/signs.
also did some performance comparison with different ray-AABB test, from 
http://jgt.akpeters.com/papers/EisemannEtAl07/

In short: it is faster, but it is not clear how to cull ray segments using ray slopes: when rays starts inside the AABB, we get a negative t value, but negatives also get false t-values...
2008-10-16 20:00:47 +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 e6c850f13b Fix/improve raycast performance for btBvhTriangleMeshShape (btQuantizedBvh, btOptimizedBvh)
Add raycast acceleration for btAxisSweep3, using btDbvtBroadphase, providing large speedup. Can be disabled in constructor to safe memory.
2008-10-14 20:24:28 +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 780350a9e1 Fix copy/paste bug, resulting in wrong friction warmstarting,
thanks to sandeep_slash, http://bulletphysics.com/Bullet/phpBB3/viewtopic.php?f=9&t=2724
2008-10-14 04:44:24 +00:00
nicola.candussi 05cc5656bb fixed the compilation errors due to GIMPACT directory move 2008-10-13 17:26:31 +00:00
erwin.coumans 919a9dcc29 Accepted CreatePatchUV contribution, thanks to mi076.
See also http://code.google.com/p/game-ws
2008-10-12 20:44:09 +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 9ae3c55a1c cmake build fixes for Gimpact move 2008-10-11 06:15:30 +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
erwin.coumans b6f0434832 a few modifications to BulletMultiThreaded, add 'setNumTasks' to interface, reorganize DMA transfers to allow larger btBroadphaseProxy size 2008-10-11 00:01:08 +00:00
erwin.coumans 512c0f167e moved Extras/Gimpact to src/BulletCollision/Gimpact
moved Extras/BulletMultiThreaded to src/BulletMultiThreaded
(build systems will be updated soon)
2008-10-10 19:48:36 +00:00
erwin.coumans 6f6f88fa08 bump up version, add changelog entry for aabb/raytest improvements 2008-10-10 18:21:22 +00:00
erwin.coumans 9ad17dda22 Add aabbMin/aabbMax to broadphase proxy, and improve rayTest performance.
Todo: use broadphase acceleration structure (btDbvtBroadphase etc) for ray test
2008-10-10 17:32:52 +00:00
erwin.coumans a42b7d93f1 Stop resitution for resting contact, after n frames (can be controlled by btContactSolverInfo.m_restingContactRestitutionThreshold
Thanks Jan Bender for bringing this up
2008-10-09 16:24:00 +00:00
erwin.coumans 0508c3a5d5 Disable TEST_NON_VIRTUAL debugging for btGjkPairDetector 2008-10-08 21:00:15 +00:00
erwin.coumans 10d103b50e Disable TEST_NON_VIRTUAL debugging for btGjkPairDetector
Reverted BulletMultiThreaded, there are some performance issues to be resolved.
2008-10-08 20:59:26 +00:00
john.mccutchan e499a13572 Copy the cached local AABB for ConvexHullShape instead of recomputing it. 2008-10-08 16:59:55 +00:00
john.mccutchan 37f6b006af Move some code (mainly constructors) into header files.
Add parameter to optionally compute local AABB for ConvexPointCloudShape
Add setter and getter for cached local AABB in PolyhedralConvexShape
2008-10-08 16:56:08 +00:00
john.mccutchan 7b1f30f1cf btGjkEpa2 should call getMarginNonVirtual instead of getMargin() 2008-10-08 16:53:56 +00:00
erwin.coumans 288df0df65 don't include cfloat by default, it breaks OSX and Linux build 2008-10-06 06:00:35 +00:00
erwin.coumans 2998d2a8f3 Added ReadBlend, a data extraction API for Blender's .blend files
This can come in handy, to author physics data for Bullet from Blender, and directly get the physics data straight from the .blend file

Thanks a lot to Adam D. Moss, to digg up this code and make it available under the MIT license
It was mentioned several years ago in this thread:
http://archives.seul.org/linuxgames/Apr-2005/msg00002.html
2008-10-06 03:53:51 +00:00
erwin.coumans 30a13d5b5d updated INSTALL file and btCollisionWorld doxygen, adding ./autogen.sh and make support. 2008-10-04 14:52:01 +00:00
erwin.coumans 454fc84517 updated changelog 2008-10-04 01:15:49 +00:00
erwin.coumans b281057337 made shape construction virtual, to allow destruction of memory of btCollisionShape 2008-10-04 01:11:40 +00:00
erwin.coumans 23b2767100 add support for exporting static plane shape in ColladaConverter. 2008-10-03 23:58:55 +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
erwin.coumans 854aaea56a renamed 'failed' into not found, to make it sound less dramatic (it continues fine). add cmake/msvc as alternative build options, at the end of configure. 2008-10-03 22:45:54 +00:00