Commit Graph
40 Commits
Author SHA1 Message Date
ejcoumans 0405ce278a use size_t instead of int, for allocator
added hashtable based PairManager, thanks Pierre Terdiman and Erin Catto
improved friction in 'cachefriendly' solver
moved 'refreshcontactpoints' into collision detection, instead of solver
avoid linear search for contact manifolds, by storing an index
ignore margin for sphere shape (its entire radius is already margin)
avoid alignment checks in BVH serialization, they don't compile on 64-bit architectures
made 'bomb' box more heavy
2007-10-11 03:17:54 +00:00
ejcoumans cc9a42d4e3 update build for IBM Cell SDK 2007-10-03 00:38:08 +00:00
ejcoumans 150f7f704b pass vector by reference (alignment) 2007-09-30 03:33:12 +00:00
ejcoumans c98a678c9a Makefile to create SPU elf and PPU lib for libspe2 parallel Cell SPE support. Contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:44:33 +00:00
ejcoumans 29dd9681f4 Added libspe2 parallel Cell SPE support contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:43:51 +00:00
ejcoumans 5ebab3e59b Added libspe2 parallel Cell SPE support contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:37:25 +00:00
ejcoumans dae8b658da Added libspe2 parallel Cell SPE support contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:36:31 +00:00
ejcoumans 0ff4444118 Added libspe2 parallel Cell SPE support contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:35:47 +00:00
ejcoumans b2b2ea71c6 Added libspe2 support contribution by IBM Germany 'Extreme Blue' project:
Thanks to Benjamin Hoeferlin, Minh Cuong Tran,Martina Huellmann,Frederick Roth.
2007-09-26 23:33:56 +00:00
ejcoumans 811c105c24 align btQuadWord on 16byte boundary
slightly improved friction model
2007-09-25 06:58:53 +00:00
ejcoumans 08d036afc7 multi-threading improvements: optionally use software caching (IBM/PS3), move some code from cpp to header to inline. 2007-09-20 22:42:56 +00:00
ejcoumans b054f375bc - Added serialization to btBvhTriangleMeshShape/btOptimizedBvh. See ConcaveDemo for example usage.
- added bt32BitAxisSweep3, which co-exists without recompilation, using template class. This broadphase is recommended for large worlds with many objects (> 16384), until btMultiSwap is finished.
- Fixed some recent issues in Bullet 2.57 related to compound (thanks Proctoid) and memory allocations
2007-09-10 01:14:42 +00:00
ejcoumans 87df3d0f32 Based on feedback from another professional game company, there are several improvements, including some API change...
Some dynamic memory allocations have been replace by pool allocation or stack allocations.
quantized aabb versus quantized aabb overlap check is made branch-free (helps a lot on consoles PS3/XBox 360)
Collision algorithms are now created through a new btDefaultCollisionConfiguration, to decouple dependency (this is the API change):
Example:
	btDefaultCollisionConfiguration* collisionConfiguration = new btDefaultCollisionConfiguration();
	m_dispatcher = new	btCollisionDispatcher(collisionConfiguration);
2007-09-08 05:40:01 +00:00
ejcoumans fa2be67e8a added preferred direction, to improve penetration depth quality (better matching collision normal) for triangle meshes. 2007-08-22 01:09:48 +00:00
ejcoumans 63d349ad5e don't create an empty algorithm when not searching, thanks Marten SvanFeldt for pointing this out 2007-08-15 15:33:56 +00:00
ejcoumans b43b8f0f75 - added 'init' function for DoubleBuffer, in case constructor is not called.
- use proper transform for concave case
thanks Marten for the patch
2007-08-15 04:16:25 +00:00
ejcoumans 620b67b752 some changes towards libspe2 support 2007-08-13 04:27:36 +00:00
ejcoumans 7834825a43 added parallel constraint solver (for CELL Spu and multi-core, work in progress)
Thanks Marten Svanfeldt/Starbreeze Studios for the contribution
2007-08-12 17:39:15 +00:00
ejcoumans f19bc68408 fixed Win32 Threaded, by waiting for multiple objects (it was re-using the same task all the time)
Thanks Marten Svanfeldt (Starbreeze Studios) for the fix
2007-08-12 17:37:36 +00:00
ejcoumans ec22825e65 added parallel solver (work in progress) and made modifications to demo/constraints to allow for getting the type without using virtual functions (needed on CELL SPU processors) 2007-08-12 17:27:33 +00:00
ejcoumans 5279f9e129 BulletMultiThreaded (SPU/multi-core): added compound shape support and concave-convex (swapped case). Thanks to Marten Svanfeldt 2007-08-02 20:16:58 +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 6915b168b2 2007-07-09 05:35:20 +00:00
ejcoumans 121fd7808e Changed BulletMultiThreaded Thread Support to be passed in, rather then global 'Win32ThreadSupport'/'Libspe2ThreadSupport' etc.
This allows developer to hookup Bullet to a custom task scheduler, by deriving from btThreadSupportInterface.
2007-07-09 03:21:33 +00:00
ejcoumans 48fbe0d6ad removed some obsolete include files 2007-06-16 02:46:49 +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 ea4dfc15d5 updated multi threading shared code on multiple platforms. 2007-06-15 02:06:56 +00:00
ejcoumans fc6cf5dbef DMA / memcpy the actual size, rather then over-estimated (can cause crashes)
added alternative to memcpy, for debugging
2007-06-14 00:21:15 +00:00
ejcoumans f4d31a2dd8 unknown issue with dma size, need to investigate deeper (had to increase target buffer size to avoid crashes) 2007-06-13 23:18:04 +00:00
ejcoumans 0fb0b6056c bug in dma size calculation 2007-06-13 23:05:37 +00:00
ejcoumans 05cbd96972 updated multithreaded version for concave trimeshes 2007-06-13 22:25:37 +00:00
ejcoumans 4f9d719493 add snippets for convex/concave multithreaded 2007-06-13 06:44:47 +00:00
ejcoumans 2b39be94a3 enable convex polyhedra (btConvexHullShape) for multi-threaded version 2007-06-13 06:01:56 +00:00
ejcoumans 50f957eff1 removed bookmark 2007-06-13 05:31:12 +00:00
ejcoumans 06e71f8fbf put proper ZLib license on top of the files 2007-06-13 05:21:34 +00:00
ejcoumans 705e6df404 updated version 2007-06-13 04:41:24 +00:00
ejcoumans 32d551944b added files to Bullet multi-threaded 2007-06-13 03:58:37 +00:00
ejcoumans 53836286b7 added jamfile for multi-threaded project 2007-06-13 01:27:44 +00:00
ejcoumans a424207b73 removed obsolete files 2007-06-13 01:05:45 +00:00
ejcoumans 6f26aa1591 Added multi-threaded collision detection. Original code is written for Cell SPU, but wrappers are provided to run on multi-core using Win32 Threads.
SpuLibspe2Support is on the todo list, so it can run on Cell Blade & PS3 Linux.
2007-06-13 01:04:43 +00:00