Commit Graph
100 Commits
Author SHA1 Message Date
erwin.coumans ced831e6a5 allow to use Bullet in C++/CLI managed C++, using the #pragma unmanaged
Make sure to #define BT_MANAGED_CODE in the managed .projects that include Bullet source code
2010-02-13 21:49:55 +00:00
erwin.coumans 32b4de20ab Fixed some serialization issues related to swapping endianness of DNA, and fixed memory leak in btSerializer 2010-02-13 01:33:28 +00:00
erwin.coumans 1a87fbf2f0 btBulletWorldImporter support for loading of btCollisionObject from a .bullet file.
minor compilation fix on PS3

Yippie, revision 2000!
2010-02-13 00:43:42 +00:00
erwin.coumans e71051e931 BulletMultiThreeded SpuGatheringCollisionDispatcher: minor change in batch size of scheduled pairs: use 128 by default, unless the number of pairs is less then (total amount of tasks * batch size) 2010-02-12 23:14:16 +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 70a6073b52 fixes to allow btStaticPlaneShape to be processed on SPU (alignment, non-virtual calls) 2010-02-12 22:49:40 +00:00
erwin.coumans 088d843f8c Add btStaticPlaneShape support for SpuGatheringCollisionDispatcher.
See Issue 312, thanks to davidsream for the report
2010-02-12 22:02:19 +00:00
erwin.coumans 66135a2082 added missing virtual destructor ~btSerializer 2010-02-12 00:55:44 +00:00
erwin.coumans 6c87394d95 added missing project 2010-02-12 00:04:22 +00:00
erwin.coumans 83f0bfc0e5 strip LibXML, we don't use it anymore (neither COLLADA_DOM) 2010-02-11 23:41:14 +00:00
erwin.coumans c1fe1e70fc Aargh, fighting cmake stupidness: remove VCPreLinkEventTool clutter 2010-02-11 23:39:14 +00:00
erwin.coumans 6463605e54 cmake more fixes 2010-02-11 22:09:08 +00:00
erwin.coumans 065a56ee4b fix Mac OSX build 2010-02-11 21:41:05 +00:00
erwin.coumans 10c300c7a0 sprintf_s and strcpy_s breaks mac build, remove for now. If we want safe versions, we need to implement a btSprintf and byStrCpy version 2010-02-11 21:33:51 +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 14f65a5cac fix minor issue with cmake build system 2010-02-09 21:12:36 +00:00
erwin.coumans f567130d78 add option to compile benchmark using BulletMultiThreaded (for now the option is only tested on Windows) 2010-02-08 23:50:33 +00:00
erwin.coumans 7d4e2873e2 move some recent MiniCL work to trunk 2010-02-08 22:42:58 +00:00
erwin.coumans 52e60c8246 manually disable incremental build (cmake seems to have issues with it still)
-> find and replace in all files LinkIncremental="2" -> LinkIncremental="1"
2010-02-08 20:38:44 +00:00
erwin.coumans 6a8a8ad39f more improvements for msvc cmake build system and test for autogenerated cmake projectfiles for msvc 2008 in msvc/2008 (with relative paths) 2010-02-08 20:35:04 +00:00
erwin.coumans 558abff4db added extra file search path for cmake-generated msvc projectfiles (needs 4 levels back) 2010-02-08 08:51:08 +00:00
erwin.coumans a6d9e977f7 A bit more work on the cmake build system, copy glut32.dll or glut64.dll into binary directory for out-of-source builds.
Include .rc resource file (to add icon) for WIN32 cmake.
2010-02-08 08:12:04 +00:00
erwin.coumans 7782952d6b Add a minimum solver 'batch' size to avoid solving many small (independent) islands separately
Default size is 128 . Disable feature by using dynamicsWorld->getSolverInfo().m_minimumSolverBatchSize = 1;
2010-02-06 22:21:44 +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 744774d9ad re-added SpuSync.h, it might come handy at some stage 2010-02-06 01:09:29 +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 04b7a7fff4 remove dead btSliderConstraint code 2010-02-05 01:51:57 +00:00
erwin.coumans 0cb44b169d variables were initialized in the wrong order (warning) 2010-02-04 23:12:31 +00:00
erwin.coumans 2e094c62ac remove a little bit of code duplication, small fix (nrow should be srow), and initialize return value to SIMD_INFINITY for nonvalid parameters/axis. 2010-02-04 23:06:25 +00:00
erwin.coumans 5364f22047 use #include "BulletHeaders.h" instead of #include <BulletHeader.h> 2010-02-04 20:37:06 +00:00
erwin.coumans e83ef9cb1c remove projectfiles from trunk for now, use cmake instead see INSTALL file 2010-02-04 06:40:33 +00:00
erwin.coumans 3598c01c9b INSTALL file update: remove references to jam and msvc projectfiles and point to cmake as primary build system for all operating systems 2010-02-04 06:08:02 +00:00
erwin.coumans efd37afac7 autogenerate projectfiles using cmake 2010-02-04 05:51:12 +00:00
erwin.coumans 8139ea3d83 update version to 2.76 in several places 2010-02-04 05:33: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 87b313d715 Add flags to btRigidBody to disable world gravity.
Use setFlags/getFlags with BT_DISABLE_WORLD_GRAVITY

See http://code.google.com/p/bullet/issues/detail?id=324
2010-02-03 23:58:48 +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 c1e20e98c7 allow to compile all demos when USE_GLUT is enabled in cmake
fix minor issue in ConcaveDemo (animation should be time-dependent)
remove COLLADA from the demos.
2010-02-03 23:04:39 +00:00
erwin.coumans 1cd52f3d11 Removed empty constructors for constraints, I don't recall why we added them (possibly SPU) but if we really need them we have to revert this.
Moved static fixed body into a static function 'getFixedBody' to avoid issues when embedding Bullet in C#/CLI managed code.
2010-02-03 23:02:33 +00:00
erwin.coumans d58081ce37 Provide easier access to CFM and ERP (and Stop ERP/Stop CFM) for constraints in a similar way to Open Dynamics Engine
virtual	void	btTypedConstraint::setParam(int num, btScalar value, int axis = -1) = 0;
virtual	btScalar btTypedConstraint::getParam(int num, int axis = -1) const = 0;
	
Parameter can be BT_CONSTRAINT_ERP,BT_CONSTRAINT_STOP_ERP,BT_CONSTRAINT_CFM,BT_CONSTRAINT_STOP_CFM
Axis is 0 .. 5, first 3 for linear degrees of freedom, last 3 for angular. If no axis is specified it will take the 'default' degree of freedom. For a btHingeConstraint this would be the hinge axis (5)
2010-02-03 22:16:09 +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 f34bb0176c minor compile fixes for __CELLOS_LV2_ 2010-02-03 02:20:09 +00:00
erwin.coumans 23c814f699 show ".bullet" as file extension in the Maya plugin, by implementing MString filter() const; 2010-02-02 18:56:28 +00:00
erwin.coumans d47ce6f46e (untested) MayaPlugin for Linux 64bit Makefile, instead of linking against Bullet libs, directly include all source files
(we should try to get the cmake build to work!)
2010-02-02 07:58:53 +00:00
erwin.coumans 6850b72ef6 added Mac OSX XCode projectfile for BulletMayaPlugin, tested with Maya 2010
unfortunately, cmake took too much time to get working on OSX (bundle and dylib doesn't combine)
2010-02-02 06:24:00 +00:00
erwin.coumans 34c7b38ac7 fixes for Mac Maya plugin. still need to figure out the flags for a 64bit build 2010-02-01 15:54:31 +00:00
erwin.coumans 2050afaa3c remove binary (BulletMayaPlugin.mll) and fix name BulletMayaPlugin (to match previous NSI Installer script) 2010-01-31 19:38:29 +00:00
erwin.coumans d734225345 Added initial cmake option to build Maya plugin (Bullet Dynamica), only tested under Windows so far. 2010-01-31 19:20:13 +00:00
erwin.coumans 4140a20552 fixed some compile issue for Mac Dynamica plugin, see
http://code.google.com/p/bullet/issues/detail?id=221

added some missing file for autotools/Makefile.am

fix: btBulletWorldImporter::loadFileFromMemory always returned false, if it was succesful
2010-01-31 16:46:06 +00:00
erwin.coumans c71b968110 fixes on unix (new lines and case) 2010-01-30 23:48:19 +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 77b773f470 more improvements, copy testFile.bullet to target binary directory (cmake), fix some warnings 2010-01-30 21:46:50 +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 08f597454a minor fix for InternalEdgeDemo 2010-01-30 03:59:58 +00:00
erwin.coumans e311597a7b added InternalEdgeDemo and fixes for btInternalEdgeUtility 2010-01-30 03:48:57 +00:00
erwin.coumans 8616ea07d8 copy glut*.dll next to executable using cmake postbuild step
re-add CollisionInterfaceDemo to cmake
2010-01-29 17:47:17 +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
erwin.coumans 701bc64ab7 re-enable the GenericJointDemo for CMake 2010-01-29 00:46:59 +00:00
erwin.coumans ae0e78efd8 add support for serialization/writing DNA on big endian machines
fix for swapping endianness for nested array of structures
2010-01-28 10:56:38 +00:00
erwin.coumans 0814473528 autogenerated MSVC projectfiles using a patched cmake-2.8 because of this pdb issue
See patched cmake build here http://gamekit.googlecode.com/files/cmake2.8_patched.zip
2010-01-28 00:50:13 +00:00
erwin.coumans a082716fe2 SerializeDemo only loads the testFile.bullet by default (making it a handy .bullet file viewer)
Also note that pressing the '=' key while running any of the demos will create/serialize a physics snapshot to testFile.bullet
2010-01-28 00:22:26 +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 7a445d70b7 fix bug in serialization buffer allocation btAlignedAlloc(16,totalSize); should be btAlignedAlloc(totalSize, 16);
added cmake-autogenerated MSVC 2008 projectfiles in msvc/2008
2010-01-27 22:24:07 +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 cd15b314c1 revert minor local change 2010-01-27 02:16:17 +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 7003823bed minor tweak to BenchmarkDemo to enable toggling between console/graphical output
Disable island manager for 3000 falling boxes: we need to add some batching rather then running thousands of single-body islands
2010-01-26 08:32:39 +00:00
erwin.coumans e6922f2af6 revert accidental commit of btSerializer.h 2010-01-26 02:25:48 +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 2f44eabd7d fix, no argument to setZero 2010-01-25 23:41:22 +00:00
erwin.coumans 8bab40b49b initialize inertia to zero 2010-01-25 23:39:55 +00:00
erwin.coumans 362a0faf0f re-add 64bit serialization structures 2010-01-25 21:59:58 +00:00
erwin.coumans a7a6ab8835 Add BulletWorldImporter: it takes the in-memory data from BulletFileLoader and instantiates objects in a BulletDynamicsWorld.
Note that BulletFileLoader is has no dependencies on BulletDynamics/BulletCollision.
Also added a custom build step to copy asset (.bullet and .obj file) into the executable folder
Made a few 'char*' 'const char*' to avoid compiler warnings
2010-01-25 21:58:32 +00:00
erwin.coumans b68f2710cd change link order, hopefully fixes some link errors on systems that need strict order of libraries (gcc/linux)
Thanks elLolo for the report, see http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=4635
2010-01-25 19:50:30 +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 e899845fc1 fix type in CMake build files 2010-01-22 00:19:25 +00:00
erwin.coumans 26a056e629 More work on serialization and BulletFileLoader 2010-01-22 00:15:33 +00:00
erwin.coumans 50aa82a240 for now use btScalar as type for serialization (need to look further into it) 2010-01-21 00:47:34 +00:00
erwin.coumans 90ecf8ccc3 fix some recent compile issues 2010-01-21 00:34:30 +00:00
erwin.coumans fbc0d86cf6 updated binary serialization structure DNA (type/size/name info) 2010-01-21 00:23:41 +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 901ff7a4f8 remove readblend, it will be replaced by Serialize 2010-01-20 22:50:37 +00:00
erwin.coumans b010233e7b Only use a system-wide vectormath_aos.h on CELLOS_LV2 or if USE_SYSTEM_VECTORMATH
(otherwise use the included version in Bullet/src/BulletMultiThreaded/vectormath
2010-01-20 22:46:56 +00:00
erwin.coumans 01351ff76f removed jam-2.5 sources 2010-01-20 22:21:06 +00:00