Commit Graph

2320 Commits

Author SHA1 Message Date
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
fa2ff30db4 replace __PPU__ by __CELLOS_LV2__, to avoid conflict with IBM Cell SDK (ppu-g++) 2007-06-27 06:55:41 +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
bba61c834c applied some reported bugfixes, angular limit issue, limit scaled from -2.0 -> -1.0 2007-06-23 00:54:08 +00:00
ejcoumans
ca24744b9d removed obsolete variables/code 2007-06-19 23:57:25 +00:00
ejcoumans
c095927afb don't check twice, thanks Marten Svanfeldt
>>2. reserve(int) method check capacity() < _Count twice.
2007-06-19 23:45:10 +00:00
ejcoumans
769809e3a7 disabled memcpy by default, it seems to be opening a can of worms, some platforms/compilers have it defined in <memory.h>, others in <string.h> etc
also for placement new, include <new> rather then <memory.h>
Thanks Marten Svanfeldt for the help
2007-06-19 23:41:01 +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
ca1c42f07f use <memory> for replacement new 2007-06-16 00:24:28 +00:00
ejcoumans
65d10d7b12 Fixes in aligned object array, to call copy constructor, and not the assignment operator, operator=
Also allows to use the array for classes with virtual methods.
2007-06-15 23:49:52 +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
68b4f60033 fixed to potential issues, reported by marshall. Thanks! 2007-06-13 20:05:02 +00:00
ejcoumans
764087fc4f sign-bit went wrong in case of 32-bit broadphase. Thanks DevO for reporting. 2007-06-01 01:21:44 +00:00
ejcoumans
f1e929f8a4 fixed 'getEuler' method 2007-05-30 03:07:39 +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
3ad4316622 the relative path #include gives troubles in some cases.
I need to revert all those back (after Steve Bakers changes a while back).
All includes should really be relative to the 'src' folder, or wherever the developer copies all the headerfiles.
2007-05-09 19:26:31 +00:00
ejcoumans
82c8687881 - initialize m_unusedW to avoid some warnings.
- added angularFactor to 'cachefriendly' constraint solver
2007-04-23 10:52:38 +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
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
c791a3192c In the copy constructor initializer list of LocalRayResult in
btCollisionWorld.h  line 139 (version 2.48) it reads:
m_localShapeInfo(m_localShapeInfo),
which should be:
m_localShapeInfo(localShapeInfo),

Thanks frinkiac8
2007-03-21 19:04:44 +00:00
ejcoumans
cef39974e1 fixed some enum issue (comma at last entry) 2007-03-21 18:51:40 +00:00
ejcoumans
4c637bf19e added btSolverConstraint.h with proper case (for case sensitive systems) 2007-03-21 15:29:50 +00:00
ejcoumans
6590f4faa4 2007-03-21 15:28:57 +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
ejcoumans
f8fe7e8f2d renamed solverbody, more work will be committed soon, please stay tuned. 2007-03-20 06:15:12 +00:00
ejcoumans
3835e5296b 2007-03-20 06:14:43 +00:00
ejcoumans
f199cd1347 make visual studio 6 compile again 2007-03-20 05:06:01 +00:00
sjbaker
6b102c65b3 Cleanup some trivial compilation warnings. 2007-03-19 04:27:59 +00:00
ejcoumans
b8ce13adb1 bugfix, also convert rigidbody into solverbodies for constraints (without contact manifolds), and do additional check for validity 2007-03-17 08:29:05 +00:00
ejcoumans
2b87104184 more solver optimizations, can be disabled using solver->setSolverMode(SOLVER_RANDMIZE_ORDER) 2007-03-17 07:59:27 +00:00
ejcoumans
151cd4b9da prepare and added constraint solver optimizations, not activated yet. 2007-03-17 00:09:12 +00:00
ejcoumans
ea97ed3e30 fix in template usage, error only reported on Sun Solaris ?!?
Thanks Noerghel for reporting!
2007-03-13 15:21:01 +00:00
ejcoumans
0a5b19864e allow to use compression on btTriangleMesh 2007-03-12 23:19:02 +00:00
ejcoumans
b2351c84f3 optional define for 32bit handles in Broadphase, which allows number of objects to exceed 32767 2007-03-12 20:14:29 +00:00
ejcoumans
02e5f2dd8e void btDiscreteDynamicsWorld::solveConstraints(btContactSolverInfo& solverInfo)
sortedConstraints.heapSort(btAlignedObjectArray<btTypedConstraint*>::less());

should be

sortedConstraints.heapSort(btSortConstraintOnIslandPredicate);
Thanks  	Clemens Unterkofler for pointing this out!
2007-03-08 01:59:04 +00:00
ejcoumans
1655fbc2c0 fixed some windows related defines, and made btClock optional (behind #define) 2007-03-07 00:33:11 +00:00
ejcoumans
57883344df removed testing assert(0) 2007-03-07 00:22:40 +00:00
ejcoumans
adfdea5ca6 replaced #include "new.h" to #include <new> 2007-03-06 23:40:06 +00:00
sjbaker
3c1ba0023b NULL is not yet defined because this header is sometimes included before stdio.h or stddef.h - rather than change a bazillion places where the header is included, I'll just use 0 instead. 2007-03-06 18:14:37 +00:00
sjbaker
a4a3474fb5 The macro 'btFullAssert' is used like this:
btFullAssert ( yadda_yadda ) ;

...in the btScalar.h header, it's defined as:

    #define btFullAssert

...which means that the statement above becomes:

    ( yadda_yadda ) ;

...which means that code may actually be compiled and executed (unnecessarily) - and even when the code is something simple like:

    ( i > 0 && i < 3 ) ;

...the GCC tosses out a 'statement with no effect' warning - before
it optimises away the code.

The fix is:

   #define btFullAssert(x)

...so that the macro still takes a parameter which is now removed
from the sources so you get:

    ;

...which is guaranteed not to generate code.
2007-03-06 18:06:28 +00:00