ejcoumans
871521dd6a
updated CMake build for btUniformScalingShape/btConvexInternalShape
2007-07-28 21:31:32 +00:00
ejcoumans
38b7f474c3
Added better support for btUniformScalingShape, by moving some data that is not shared from btConvexShape to btConvexInternalShape. This reduces the sizeof btUniformScalingShape to 16 bytes (from 64).
...
This is good when having lots of re-used shapes with different sizes.
Convex shapes will need to derive from btConvexInternalShape (which is a subclass of btConvexShape). We could have renamed btConvexShape to 'btConvexShapeInterface' (can still do that later)
2007-07-28 21:10:21 +00:00
ejcoumans
177b6f5ce2
Added btUniformScalingShape (including support for debug rendering etc)
...
This allows to re-use a convex shape, while each instance can re-scale it (with a uniform scalar factor)
2007-07-28 19:20:45 +00:00
ejcoumans
685138d033
include paths should not be relative starting with "../
...
It leads to problems with certain compilers, when Bullet/src is located in a long pathname.
Keep include path starting with "LinearMath/, "BulletCollision/, or "BulletDynamics/
2007-07-14 05:08:57 +00:00
ejcoumans
7eea7092de
Applied FSelUsage.patch, thanks a lot Marten Svanfeldt, Starbreeze Studios
2007-07-12 05:28:10 +00:00
ejcoumans
5c80ff1f7d
improved performance by adding constructors to btTransform/btMatrix3x3 to avoid conversions, compoundshape returns const references (instead of duplicate objects)
...
Thanks Marten Svanfeldt, Starbreeze Studios
2007-07-05 23:48:05 +00:00
ejcoumans
cdc8485db9
updated version, added 'singleObjectQuery' preliminary collision query (convex cast etc)
...
added filtering for raycast, thanks Jacky_J
const propagated through a few files
added btHeightfieldTerrainShape.cpp to cmake buildsystem
2007-07-03 05:10:20 +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
114bfad68f
made some improvements based on feedback.
...
- made getHeightFieldValue virtual (allows custom heightfield formats)
- don't use shorts, just full integers (no reason to limit the terrain size to 65536)
2007-06-28 20:40:54 +00:00
ejcoumans
ced94d63bf
Thanks to Mårten Svanfeldt for the contribution:
...
- optionally disable collisions between bodies that are linked with constraints
- improved debug rendering with support for compounds, spheres, capsules
2007-06-28 19:14:30 +00:00
ejcoumans
a0c5401033
bugfix, wrongly assigned value to a local variable (copy/paste bug).
...
Thanks binofet, see http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=366
2007-06-28 00:05:14 +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
3ca6d7385e
basic support for height fields. They are producing temporary triangles, similar to the plane shape.
2007-06-27 03:19:34 +00:00
ejcoumans
272a7dfac4
More work on multi-threaded version, fixed alignment issues in DMA.
...
BulletMultiThreaded shared implementation works now on both Win32 Threads and PS3 Cell SPU.
2007-06-16 02:06:24 +00:00
ejcoumans
718b73371f
removed 'processAllTrianglesBruteForce'
...
autogenerated new visual studio projectfiles
2007-06-14 13:06:05 +00:00
ejcoumans
effb5a8b62
added brute-force triangle iteration method, to allow graphics to skip aabb traversal (useful for debugging)
2007-06-13 22:35:14 +00:00
ejcoumans
eca55afe4d
some more changes related to PS3 SPU optimizations (16-byte alignment, allowing non-virtual access to data)
2007-05-25 23:27:49 +00:00
ejcoumans
c1250cd26a
Planar triangle meshes with zero extends (in any direction) could cause quantization failures (division by zero).
...
Added a positive value to quantization AABB (doesn't affect performance).
2007-05-23 20:09: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
bc3f9535ad
cleaned up, removed warning under MSVC2005 (Level 4)
...
Mostly related to alignment and unused variables
2007-04-13 01:37:21 +00:00
ejcoumans
2cf026aae3
allow incremental refitting of the quantized aabb tree
2007-04-10 21:40:43 +00:00
ejcoumans
853bafb7ae
Get the open source Bullet library more in sync with Playstation SPU version
2007-04-10 01:02:58 +00:00
ejcoumans
9546633ade
Added 'cache friendly' tree traversal format, and traversal. Array of subtrees with specified maximum size. This is useful to fit tree traversals on SPU.
2007-03-27 21:02:45 +00:00
ejcoumans
7adc0742e3
Added demo code that show recursive traversal on tree data that doesn't have explicit left/right child pointers.
...
Can also be used as starting point for tree versus tree.
2007-03-26 19:19:25 +00:00
ejcoumans
4685f6acc8
Added a refit to the quantized stackless tree, with updated ConcaveDemo.
2007-03-21 02:45:43 +00:00
ejcoumans
c1a54d9edc
Attempts to improve performance. Not much gain yet, but good to experiment what has effect and what hasn't.
...
Added 'DO_BENCHMARK_PYRAMID' to CcdPhysicsDemo.
2007-03-20 20:12:23 +00:00
sjbaker
6b102c65b3
Cleanup some trivial compilation warnings.
2007-03-19 04:27:59 +00:00
ejcoumans
0a5b19864e
allow to use compression on btTriangleMesh
2007-03-12 23:19:02 +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
b73900bc60
Improved performance of convex collision shapes, cache local AABB instead of recomputation. This fixes issue with very slow performance in larger .bsp levels.
...
Moved some asserts into 'btFullAssert', which is disabled by default (see btScalar.h to enable them). This is to speed-up debugging.
2007-02-26 04:59:05 +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
581468ceec
Added btCapsuleShape. This could already be simulated by simply adding 2 spheres to the btMultiSphereShape, but this was bad documented/unknown.
...
For tapered capsules, you can still use btMultiSphereShape, just pass 2 spheres with different radius.
2007-01-30 00:09:08 +00:00
ejcoumans
ca973e9322
Fixed AABB tree building, which failed for certain large triangle meshes due to stack overflow.
...
Now it has a safer check for unbalanced tree, and forces them to be balanced.
2007-01-04 22:31:31 +00:00
sjbaker
e9b21e21a6
Pathnames between #include files that are intended to be used within application code should not depend on the paths to the subdirectories being known to the compiler because this will not always be the case when an end-user includes your headers.
...
Includes of files in the local hierarchy must not use <...> please stick with "..."
2006-12-26 15:33:28 +00:00
sjbaker
208bbe7594
Added a set of empty, classless 'extern "C"' probe functions to allow '.so' loaders and application domain 'autotools' to easily and unambiguously check for the correct installation of the various bullet libraries.
...
eg:
bulletmath_suffix="-lbulletmath"
bulletcollision_suffix="-lbulletcollision"
bulletdynamics_suffix="-lbulletdynamics"
dnl Check bulletmath library
AC_CHECK_LIB(bulletmath, btBulletMathProbe, true,
AC_MSG_ERROR([there seems to be a problem with the bulletmath library]))
LIBS="$bulletmath_suffix $LIBS"
dnl Check bulletcollision library
AC_CHECK_LIB(bulletcollision, btBulletCollisionProbe, true,
AC_MSG_ERROR([there seems to be a problem with the bulletcollision library]))
LIBS="$bulletcollision_suffix $LIBS"
dnl Check bulletdynamics library
AC_CHECK_LIB(bulletdynamics, btBulletDynamicsProbe, true,
AC_MSG_ERROR([there seems to be a problem with the bulletdynamics library]))
LIBS="$bulletdynamics_suffix $LIBS"
2006-12-26 00:39:32 +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
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
71145de242
renamed ConcaveShape to btConcaveShape
...
added btHeightfieldTerrainShape (not done yet)
2006-11-29 02:11:25 +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
0757f1fe9e
add 'force activate', for static/kinematic objects that get moved.
...
fixed some activation issues with kinematic objects
2006-11-21 13:00:18 +00:00
sjbaker
04d41b7a0a
Cleanup compilation warnings.
2008-02-12 04:22:31 +00:00
ejcoumans
3adf09f7e3
updated EPA,
...
updated user manual (work in progress)
2006-11-18 03:27:01 +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
438230b95b
added proper clipping of angular limits in generic d6 ConstraintSolver/btGeneric6DofConstraint.cpp
...
added trianglebuffer (easier GIMPACT integration)
2006-11-10 22:56:45 +00:00
ejcoumans
6d47d9492e
added non-uniform scaling to btMultiSphereShape
...
added ray-aabb check
modified Raycast demo to be more useful for debugging collision shapes
2006-11-09 01:58:33 +00:00
ejcoumans
074e2b2d3b
improved robustness of penetrations involving triangles and boxes, by adding their 'preferred' penetration directions.
...
added wireframe/solid mode for meshes
updated solid penetration depth solver (comparison in Extras)
2006-11-05 05:12:10 +00:00
ejcoumans
d6c6cbaee6
enabled the vehicle demo again (still needs lots of tuning before it drives well)
...
fixed some warnings
2006-10-29 03:36:16 +00:00
ejcoumans
3fe3b11924
use Dispatcher in ConcaveConvexCollisionAlgorithm (so it uses the registered collision algorithm, not hardcoded convexconcave)
...
improved performance of constraint solver by precalculating the cross product/impulse arm
added collision comparison code: ODE box-box, also sphere-triangle
added safety check into GJK, and an assert for AABB's that are very large
write partid/triangle index outside of GJK
2006-10-28 02:06:19 +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