Commit Graph

1311 Commits

Author SHA1 Message Date
erwin.coumans
44b44429fa fixed minor build issues for IFF lib 2008-10-27 01:56:10 +00:00
erwin.coumans
94fc0ff063 added autogenerated MSVC projectfiles for libiff and appiffCheck 2008-10-27 00:27:52 +00:00
erwin.coumans
ffcfd84fc8 added build files for iff library (binary Interchange File Format) 2008-10-27 00:22:35 +00:00
erwin.coumans
82448a3942 minor IFF.h changes to migrate from .c to .cpp 2008-10-27 00:05:32 +00:00
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