Commit Graph

766 Commits

Author SHA1 Message Date
erwin.coumans
41e9115bca Add support to serialize btOptimizedBvh/btQuantizedBvh for a btBvhTriangleMeshShape (using the new btSerializer). This is a new implementation, with full cross-platform support.
So it is different from the in-place method (btQuantizedBvh::serializeInPlace/deserializeInPlace).

It is also possible to serialize/deserialize just the bvh, using the btSerializer (needs some code snippet/helper)
See also http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4770
2010-02-23 09:03:46 +00:00
erwin.coumans
1c0ec85c32 Retired the Jam build system (and msvcgen). CMake is currently the preferred build system on Windows, Mac and UNIX
(autotools files are still left for now)
2010-02-20 15:47:20 +00:00
erwin.coumans
5c5ce9b4b3 fixes_dialogmenu_capsule.patch 2010-02-18 06:16:35 +00:00
erwin.coumans
45e7c7f564 Add missing files to XCode project
Add option to disable SPU collision processing, and add assert to detect unsupported recursive compounds on SPU.
2010-02-17 02:34:26 +00:00
erwin.coumans
729a883b71 attempt to let Maya plugin build under Linux using cmake
Thanks redpawfx for the feedback, see http://code.google.com/p/bullet/issues/detail?id=221

improvements in cmake (disable this incremental linking)
2010-02-16 04:30:53 +00:00
erwin.coumans
510be411e6 added missing virtual destructor 2010-02-13 22:06:33 +00:00
erwin.coumans
e68a13f185 fixes to allow btStaticPlaneShape to be processed on SPU (alignment, non-virtual calls) 2010-02-12 22:49:52 +00:00
erwin.coumans
d4c3633405 Get rid of btSolverBody and use btRigidBody directly. btSolverBody didn't improve performance after all, due to random-access
Tweak the BenchmarkDemo a bit: 

1) disable deactivation in graphical mode
2) add some settings that increase performance in the BenchmarkDemo2 (1000 stack) from 35ms to 15ms on this quad core (at the cost of a bit of quality)
2010-02-11 20:30:56 +00:00
erwin.coumans
bb8d1b11df Add btBroadphaseInterface::aabbTest. btDbvtBroadphase and btAxisSweep3 should perform well, as long as the raycast accelerator is enabled.
This should fix the btCollisionWorld::contactTest(btCollisionObject* colObj, ContactResultCallback& resultCallback);

Thanks to Ola for the report!
2010-02-11 18:25:50 +00:00
erwin.coumans
7a175fb65e Add pairwise collision test:
void	btCollisionWorld::contactPairTest(btCollisionObject* colObjA, btCollisionObject* colObjB, ContactResultCallback& resultCallback)

cmake: improve feedback for Maya Plugin handling if the Maya base path is not detected
2010-02-11 09:18:49 +00:00
erwin.coumans
5907f81774 Add void btCollisionWorld::contactTest(btCollisionObject* colObj, ContactResultCallback& resultCallback);
The user should derive its own class from ContactResultCallback and implement the following callback (similar to the gContactAddedCallback):

virtual	btScalar	addSingleResult(btManifoldPoint& cp,	const btCollisionObject* colObj0,int partId0,int index0,const btCollisionObject* colObj1,int partId1,int index1) = 0;
2010-02-11 08:45:41 +00:00
erwin.coumans
70c70bf681 cmake: don't install anything by default, unless the option INSTALL_LIBS is enabled
cmake: fix for multi-threaded benchmarks
2010-02-11 07:12:58 +00:00
erwin.coumans
97921411d2 cmake build system improvement: don't INSTALL when INTERNAL_CREATE_DISTRIBUTABLE_MSVC_PROJECTFILES is set
minor fix for MinGW32, reported here: http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4710
2010-02-11 04:32:37 +00:00
erwin.coumans
a9556d0fd5 use _WIN32 instead of WIN32 (_WIN32 is a compiler built-in)
add virtual destructor to bFile
2010-02-06 18:50:45 +00:00
erwin.coumans
a5f51905e8 deal with degenerate triangles in the btInternalEdgeUtility
thanks to scarrow, see http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4603&start=15
2010-02-05 05:31:08 +00:00
erwin.coumans
5364f22047 use #include "BulletHeaders.h" instead of #include <BulletHeader.h> 2010-02-04 20:37:06 +00:00
erwin.coumans
99d9fddc42 add name for collision shape and constraint serialization (to objects, shapes and constaints can be mapped to user data)
updated serialization structures and header files (for new 'm_name' field, replacing user pointer)
fix issue with  btGeneric6DofConstraint::setParam in headerfile
2010-02-04 05:28:17 +00:00
erwin.coumans
58c5630d7f Add new demos to cmake: SerializeDemo and InternalEdgeDemo
Fix in btShapeHull for previous commit
Add support to serialize name for objects
Updated serialization structures.
2010-02-04 01:07:07 +00:00
erwin.coumans
219517db2d move static globals inside static member functions, to avoid hassle with C#/CLI/C++ managed code, compile error C3820 2010-02-03 23:27:22 +00:00
erwin.coumans
d2a55dee59 Add API to construct an optimized BVH for btBvhTriangleMeshShape,
Thanks to Benoit see Issue 340
http://code.google.com/p/bullet/issues/detail?id=340#c0
2010-02-03 16:16:46 +00:00
erwin.coumans
e57f03599a make Bullet compile on Visual Studio 6 2010-01-30 23:10:12 +00:00
erwin.coumans
788f48643b remove all warnings on Mac OSX Snow Leopard 2010-01-30 22:31:56 +00:00
erwin.coumans
f9ad5cf587 fixes in serialization, should fix non-Windows platforms. 2010-01-30 21:31:56 +00:00
erwin.coumans
4fcea85c01 Changed options to BT_TRIANGLE_CONVEX_BACKFACE_MODE ,BT_TRIANGLE_CONCAVE_DOUBLE_SIDED and BT_TRIANGLE_CONVEX_DOUBLE_SIDED.
Note that double sided options are experimental, single sided is recommended, and backfacing is default
2010-01-30 10:44:16 +00:00
erwin.coumans
fbc4089e3f add btAdjustInternalEdgeContacts options for BT_TRIANGLE_CONVEX_BACKFACE_MODE (defaults to front facing) and BT_TRIANGLE_CONCAVE_SINGLE_SIDED 2010-01-30 10:21:40 +00:00
erwin.coumans
01b66a6799 fixes in serialization (don't serialize shapes multiple times), hull shape issue,
fix InternalEdgeDemo compilation using GLUT
2010-01-30 06:55:39 +00:00
erwin.coumans
e311597a7b added InternalEdgeDemo and fixes for btInternalEdgeUtility 2010-01-30 03:48:57 +00:00
erwin.coumans
37f6df2c32 added serialization support for gimpact mesh
improved cmake build system for updating the serialization structures
2010-01-29 02:50:34 +00:00
rponom
ee3e231be5 + more consistent 'setLocalScaling' for the btCompoundShape. Full non-uniform scaling is not supported when child shapes have a rotation. If any child shapes have rotation, the best you can do is either uniform scaling, or 'baking' the non-uniform scaling into the child geometry (vertices of a convex hull for example)
+ fixed an issue with BulletWorldImporter, btBoxShape implicitShapeDimensions already includes local scaling.
2010-01-28 23:41:09 +00:00
erwin.coumans
485d1a338e fix btCompoundShaps serialization of child shapes
added ConcaveDemo to cmake
added LinearMath/btSerializer.h to btBulletCollisionCommon.h
2010-01-27 23:37:46 +00:00
erwin.coumans
725411a1f3 added a warning to all serialization structures:
///do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64
2010-01-27 02:41:38 +00:00
erwin.coumans
00f58e5a91 added basic serialization for several constraints including btPoint2PointConstraint, btHingeConstraint, btSliderConstraint, btConeTwistConstraint, btGeneric6DofConstraint
(no motor support or advanced settings yet)
added btStaticPlaneShape serialization
Added toggle in cmake for BenchmarksDemo to enable/disable graphics rendering
2010-01-27 02:13:56 +00:00
erwin.coumans
44565d20f4 added serialization support for btCompoundShape, btCapsuleShapeX/Z, btCylinderShapeX,Z
make some serialization methods const
prepare for constraint serialization
2010-01-26 02:24:03 +00:00
erwin.coumans
e7ff71d99b add support for double precision and 64bit serialization (and compatibility between all versions)
fix some issue in serialization of nested array data
add some tesing files
2010-01-25 19:42:51 +00:00
erwin.coumans
5d8e6dc3f3 improved btTriangleMeshShape/btBvhTriangleMeshShape serialization 2010-01-24 16:48:14 +00:00
erwin.coumans
9d7d1c3983 more work on serialization, initial for btTriangleMeshShape/btBvhTriangleMeshShape (only for floating point vertices, integer indices) work-in-progress 2010-01-23 20:59:41 +00:00
erwin.coumans
5e85d43b0b more Bullet serialization (uncompleted triangle mesh saving, work-in-progress) 2010-01-23 02:13:25 +00:00
erwin.coumans
5378cf4c8a more work on Bullet serialization (added support for btConvexHullSupport) 2010-01-23 00:58:47 +00:00
erwin.coumans
0f707603f1 more work on serialization, work-in-progress 2010-01-23 00:04:58 +00:00
erwin.coumans
76eccc39fc more work on serialization (work-in-progress) 2010-01-22 03:36:58 +00:00
erwin.coumans
26a056e629 More work on serialization and BulletFileLoader 2010-01-22 00:15:33 +00:00
erwin.coumans
6af9f9434f worked a bit more on the serialization, and added a preliminary SerializeDemo. 2010-01-21 00:17:18 +00:00
erwin.coumans
6b89f028bf add newlines to files, thanks to tasioga for the patch
http://code.google.com/p/bullet/issues/detail?id=334
2010-01-20 21:33:35 +00:00
erwin.coumans
099c36a71e Add a new flag btCollisionObject::CF_DISABLE_VISUALIZE_OBJECT to give control over what objects are drawn using the debug drawer
This solves Issue 238 , thanks to  Linzner for the suggestion
Remove some warnings from GL_DialogDynamicsWorld.
2010-01-20 19:38:04 +00:00
erwin.coumans
50a3c32a5f Added preliminary binary serialization code in btCollisionWorld.cpp, with example in Bullet/Demos/BasicDemo.cpp
(work-in-progress, some initial working version should be ready very soon, for Bullet 2.76)
2010-01-20 01:00:39 +00:00
erwin.coumans
5d3ba1daa6 fix compile issue, and add BulletCollision/CollisionDispatch/btInternalEdgeUtility.cpp/h to CMakeLists.txt/Makefile.am 2010-01-19 20:12:45 +00:00
erwin.coumans
96d73d642d fixes in debug drawer: always use rgba color with each component in range [0..1]
use sphere/box rendering of debug drawer
Thanks accodejockey for the report: See http://code.google.com/p/bullet/issues/detail?id=280
Also see http://code.google.com/p/bullet/issues/detail?id=279
2010-01-19 19:38:18 +00:00
erwin.coumans
c6df06c6a1 Added btDbvtBroadphase::setAabbForceUpdate to always update the aabb (skip optimizations), to address this issue (helps with occlusion culling)
///http://code.google.com/p/bullet/issues/detail?id=223

Also added a few missing 'virtual' keywords (the functions were virtual already because of the base class)
2010-01-19 19:06:47 +00:00
erwin.coumans
b57314c590 Added write access to implicitShapeDimensions, this allows to change the dimensions of a box, capsule etc.
See also request here: http://code.google.com/p/bullet/issues/detail?id=325

Also added a warning. This warning also applies to all methods that change the collision shape:

"changing a collision shape while the body is in the world is not recommended,
it is best to remove the body from the world, then make the change, and re-add it
alternatively flush the contact points, see documentation for 'cleanProxyFromPairs'"
2010-01-19 06:34:39 +00:00
erwin.coumans
4280f54ccf Get rid of some warnings, mainly unused parameters/variables.
Thanks sparkprime for the patch, see http://code.google.com/p/bullet/issues/detail?id=330
2010-01-19 06:10:27 +00:00