Commit Graph
100 Commits
Author SHA1 Message Date
erwin.coumans b11f6ad26d enable the OpenCL test for SoftDemo 2011-12-20 18:12:52 +00:00
erwin.coumans 2876c14888 Apply a patch that updates vertex position on GPU for the OpenCL version, by Dongsoo Han (saggita), work-in-progress
Removed the unused OpenCL kernels
Add example how to cache binary kernels, see SoftDemo compiled with OpenCL AMD using msvc/vs2008_opencl.bat
2011-12-20 18:04:01 +00:00
erwin.coumans 1f7a67b7da Apply a patch that updates vertex position on GPU for the OpenCL version, by Dongsoo Han (saggita), work-in-progress
Removed the unused OpenCL kernels
Add example how to cache binary kernels, see SoftDemo compiled with OpenCL AMD using msvc/vs2008_opencl.bat
2011-12-20 18:03:24 +00:00
erwin.coumans 5cb40ed6e3 Apply a patch that updates vertex position on GPU for the OpenCL version, by Dongsoo Han (saggita), work-in-progress
Removed the unused OpenCL kernels
Add example how to cache binary kernels, see SoftDemo compiled with OpenCL AMD using msvc/vs2008_opencl.bat
2011-12-20 18:03:04 +00:00
erwin.coumans fff709635e Apply a patch that updates vertex position on GPU for the OpenCL version, by Dongsoo Han (saggita), work-in-progress
Removed the unused OpenCL kernels
Add example how to cache binary kernels, see SoftDemo compiled with OpenCL AMD using msvc/vs2008_opencl.bat
2011-12-20 18:02:48 +00:00
erwin.coumans 3035ee69c4 Fix for btCapsuleShape, m_localScaling is already applied to the radius/halfExtents so don't apply it again in the localGetSupportVertex(NonVirtual)
Make sure SerializeDemo compiles fine without DESERIALIZE_SOFT_BODIES defined
2011-12-14 11:18:11 +00:00
erwin.coumans dacb24e968 pass in const vectors into btUniversalConstraint and normalize the local copy
Thanks to SkewMatrix for the patch, http://code.google.com/p/bullet/issues/detail?id=571
2011-12-14 09:10:12 +00:00
erwin.coumans 22915b2344 enable randomization of non-contact constraints (disabled by default)
Thanks to Peter Kyme, http://code.google.com/p/bullet/issues/detail?id=576
2011-12-14 09:06:14 +00:00
erwin.coumans aa6f352ddc use #include "btScalar.h" instead of "LinearMath/btScalar.h"
fixes Issue 572
2011-12-12 16:56:39 +00:00
erwin.coumans e1c9b67ef7 reduce dynamic memory allocations in btDbvt::rayTestInternal,
fixes Issue 574, thanks to Anton Breusov
2011-12-12 16:52:52 +00:00
erwin.coumans 606d65d95b Reduce dynamic memory allocation, fixes Issue 573
Thanks to Anton Breusov for the patch
2011-12-12 16:47:41 +00:00
erwin.coumans 665829bd81 only use the getInterpolationWorldTransform for objects that are not isStaticOrKinematic
This should solver the issue discussed here: http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?t=7681
remove some warning
2011-12-12 13:33:34 +00:00
erwin.coumans 76785d6e01 Only set the m_interpolationWorldTransform to m_worldTransform for kinematic objects, and use the new transform directly for static/dynamic objects.
update some cmake project files
2011-12-12 11:53:20 +00:00
erwin.coumans a06ee28aa6 fix OpenCL kernel 2011-11-30 18:44:00 +00:00
erwin.coumans 866dc2c6c7 operator argument had to be const 2011-11-22 00:21:48 +00:00
erwin.coumans 0e6926c096 avoid compile errors in projects (btHashMap copied gives errors, see http://gamekit.org/forum/viewtopic.php?f=9&t=29&start=93 2011-11-22 00:03:46 +00:00
erwin.coumans bd8c8355fa update to a newer version of premake4 4.4 beta3 2011-11-16 23:22:50 +00:00
erwin.coumans 4e0aa42123 Disallow the operator= for btAlignedObjectArray, together with some fixes in the code (to avoid accidental deep copy)
Enable #define BT_ALLOW_ARRAY_COPY_OPERATOR in Bullet/LinearMath/btAlignedObjectArray.h to re-enable it
Fixes Issue 564, thanks to Tissen Peter for the report/fix
2011-11-15 20:09:05 +00:00
erwin.coumans d3c6f9dd67 BulletWorldImporter didn't properly import m_3indices16 arrays, fixes Issue 562 thanks to Marius Elvert
Support for m_3indices8 import
Fix un-initialized memPtr->m_3indices8 at export time, add a workaround at loading time
2011-11-15 18:40:45 +00:00
erwin.coumans f64fc0a26b avoid array out-of-bounds access 2011-11-15 18:16:42 +00:00
erwin.coumans 80b23971ca move the CL_PLATFORM_MINI_CL check in the right place 2011-11-15 00:27:45 +00:00
erwin.coumans 108065d96c fix OSX build 2011-11-14 23:35:22 +00:00
erwin.coumans 21ecc26fde fix compile issue under linux 2011-11-14 23:29:07 +00:00
erwin.coumans 0ccc82a2ab disable the OpenCL asserts by default (BT_SUPPRESS_OPENCL_ASSERTS), and re-enable the shader initialzation in bool btOpenCLSoftBodySolver::checkInitialized() 2011-11-14 23:12:33 +00:00
erwin.coumans 0d1fcf7c48 Move btOclUtils.cpp/h and btOclCommon.cpp/h to btOpenCLUtils.cpp/h
Rename member numerator to m_numerator in btConvexHullComputer.cpp to avoid confusion (Thanks to Ian for the feedback)
Add btSoftBody::addAeroForceToNode and btSoftBody::addAeroForceToFace, thanks to Dongsoo Han/Saggita
2011-11-14 22:22:49 +00:00
erwin.coumans a374f8c0d4 remove btOclGetMaxFlopsDev, it was buggy. Just use device 0 in the demos. The OpenCL initialization needs more work/some GUI. 2011-11-11 20:11:03 +00:00
erwin.coumans 66c349caa6 Remove btSoftBodySolver_CPU.*
Move btSoftBodySolverData.h to src/BulletMultiThreaded/GpuSoftBodySolvers/Shared/btSoftBodySolverData.h
Attempt to re-enable MiniCL version of OpenCLClothDemo (cloth-capsule collision still broken)
Add optional OpenCL acceleration to SerializeDemo (just for cloth)
2011-11-11 19:00:26 +00:00
erwin.coumans 14352169ab Fix some array out-of-bounds access errors
Add an assert using MAX_DEGENERATE_STATS
Fixes Issue 561, thanks to jarno for the report
2011-10-24 18:24:31 +00:00
erwin.coumans a415ef6067 apply patch to fix incorrect co-planar polygon merging
Thanks to fastflo for the report/patch. This fixes Issue 557
2011-10-18 15:41:14 +00:00
erwin.coumans 04285116ad Use a different check for duplicate vertices,
Thanks to fastflo, see http://code.google.com/p/bullet/issues/detail?id=555
and http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=7511&p=25762#p25762
Added missing Intel OpenCL build file, and fix some compile issue due to missing external
2011-10-12 22:40:43 +00:00
erwin.coumans 8b849e0d07 Fixed split impulse SIMD issue in the constraint solver (doesn't affect default behaviour, as split impulse is switched off by default)
Thanks to Laurent Coulon for the report/fix. http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=7515&p=25766#p25766
2011-10-12 20:22:55 +00:00
erwin.coumans 961fb12985 also set the properties for the mirror version of the plane-convex algorithm (convex-plane)
This fixes Issue 548, thanks to ejtttje
2011-09-19 22:10:32 +00:00
erwin.coumans a521c1f42a updated user manual (minor changes) 2011-09-17 00:27:54 +00:00
erwin.coumans 4f25d731f9 fix autotools build
fix picking for tetrahedral soft body (demo 29/30)
add text for failing OpenCL kernel build, thanks to Greg
2011-09-16 23:58:38 +00:00
erwin.coumans eb6d511565 Premake4 build system fix: only disable exception handling for msvc 2008, 2010, not for 2005 because it fails without service pack. 2011-09-16 22:52:47 +00:00
erwin.coumans d3dc7afefd fix in non-SIMD OpenCL cloth demo, kernel names changed.
Thanks Greg, see http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=7442&p=25422#p25422
2011-09-16 21:58:01 +00:00
erwin.coumans 0656de3057 premake4 compile/link fixes 2011-09-16 19:56:14 +00:00
erwin.coumans bb29d15058 create premake4 solutions for the various OpenCL configurations (AMD, NVIDIA, Intel OpenCL SDKs for Windows)
primarily to distribute project files that work.
CMake is still better supported in general (not all demos/libs have been ported)

Revert a recent change about warnings: %zu doesn't work in printf, %d does
2011-09-16 01:28:34 +00:00
erwin.coumans ce62d7615e Update version to 2.79 for a new bugfix release 2011-09-15 23:36:59 +00:00
erwin.coumans 144d24009a CcdPhysicsDemo: fixed the setCcdMotionThreshold value, it was wrong (way too small 2011-09-15 23:24:42 +00:00
erwin.coumans 654fe7872a remove btContinuousDynamicsWorld, it is obsolete and was never completed.
If you need tunneling prevention, one option is to use the CCD motion clamping in btDiscreteDynamicsWorld. See also Bullet/Demos/CcdPhysicsDemo.
You can use an embedded sphere that prevents tunneling, using the following settings:

		body->setCcdMotionThreshold(0.5);
		body->setCcdSweptSphereRadius(0.9f);


Add a camera zoom setting for the demos, thanks to ejtttje, fixes Issue 543
2011-09-15 18:47:13 +00:00
erwin.coumans 69a932f13e Choose a default 'safe' collision margin for very small convex collision shapes, in particular btBoxShape and btCylinderShape
and add some documentation in btConvexInternalShape.h
Thanks to Simon Lundmark for the suggestion

Fixes http://code.google.com/p/bullet/issues/detail?id=349
2011-09-15 18:17:20 +00:00
erwin.coumans a13d22dc84 Fix a lot of warnings, thanks to ejtttje, Fixes issue 537
Fix soft body debug rendering
2011-09-15 01:17:34 +00:00
erwin.coumans 0c01816375 Add a postfix for Debug, MinsizeRel and ReleaseWithDebug builds
Thanks to Dennis, fixes Issue 542
2011-09-15 00:05:45 +00:00
erwin.coumans b68c64f2db Disable DX11 cloth bounds update, it is too slow by default.
Use g_dx11Solver->setEnableUpdateBounds(true); to re-enable it (it enables GPU collision of cloth versus capsule)
2011-09-14 20:55:00 +00:00
erwin.coumans 385933b5ed Expose the multi-point perturbation algorithm for btConvexPlaneCollisionAlgorithm
Usage:
	m_collisionConfiguration = new btDefaultCollisionConfiguration();
	m_collisionConfiguration->setPlaneConvexMultipointIterations();

It is only enabled for polyhedral convex shapes, because implicit/smooth surfaces such as spheres, cylinders, capsules and cones keep on rolling forever, due to the extra off-center contact points
2011-09-14 20:38:33 +00:00
erwin.coumans 9abcd9cf2e some compile fixes for MacOSX 2011-09-14 18:48:23 +00:00
erwin.coumans d1eec5f5bb make cppunit compile on Mac OSX 2011-09-14 17:58:36 +00:00
erwin.coumans 9fee53cf4d added a config-auto.h for cppunit that works on linux (Ubuntu) 2011-09-14 02:45:01 +00:00
erwin.coumans fe6991822d Use the original code for convex-plane collision in (btConvexPlaneCollisionAlgorithm),
rather than the perturbed rotated version (it is slower and harder to debug)
2011-09-14 01:28:40 +00:00
erwin.coumans b690019e39 Removed global operator- in btQuaternion, and rewrote the 'getAxis' method
Add a unit test for testQuaternionGetAxisAngle
Thanks to ejtttje, fixes Issue 538
2011-09-13 23:37:05 +00:00
erwin.coumans 02a0574ceb rename LICENSE -> COPYING to satisfy automake
see Issue 536
2011-09-13 19:34:42 +00:00
erwin.coumans 1e360bdb6b add Intel build support for the OpenCL cloth demo, and use the bullet_logo.png
Thanks to ggjunker for the patch, see Issue 533
2011-09-13 01:52:42 +00:00
erwin.coumans c8b3c9e306 more premake4 fun and tests 2011-09-03 00:27:54 +00:00
erwin.coumans 82234e6f33 add preliminary premake4 support (next to cmake) mainly to auto-generate Visual Studio projectfiles that can be redistributed (with no dependency on cmake, premake) 2011-09-02 22:24:08 +00:00
erwin.coumans ed02816e68 add kst argument for VSolveLinks.cl kernel (VSolveLinksKernel method)
Note that this method is not used by default.
Thanks to Peter for the report and fix, this fixes Issue 511
2011-09-02 04:30:01 +00:00
erwin.coumans 06112592fd Add another wind model, that doesn't clamp the maximum force.
Thanks to saggitasaggita for the patch, see http://code.google.com/p/bullet/issues/detail?id=532
2011-09-01 01:53:45 +00:00
erwin.coumans 822e8a3383 remove autogenerated visual studio projects from trunk. They will be replaced by premake4 generated files soon (instead of hacking cmake to do that job) 2011-08-30 21:51:08 +00:00
erwin.coumans b907018561 ParticleOCL demo was sorting out-of-bounds, thanks to igelado for the report
Fixes Issue 515
2011-08-30 04:19:26 +00:00
erwin.coumans 642a6821a5 remove speculative contacts, they break restitution and cause other artifacts
use btConvexPolyhedron for debug rendering, if available
fixes in btConvexConvexAlgorithm for polyhedral contact clipping, if GJK separating normal is zero
don't shift vertices in btPolyhedralConvexShape
2011-08-30 03:28:32 +00:00
erwin.coumans ad76b3222f update to the latest HACD convex decomposition (minor fixes) 2011-08-23 00:25:17 +00:00
erwin.coumans 7743f5bce5 Update environment variable to CUDA_PATH (was NVSDKCOMPUTE_ROOT) and fix a few bugs that prevented the NVIDIA OpenCLClothDemo to run properly. 2011-08-17 22:08:10 +00:00
erwin.coumans 0336ed8637 prepare support for picking softbody tetrahedra 2011-08-06 21:50:09 +00:00
erwin.coumans e83b5dac75 fixes in the DX11 cloth (for devices with physical wavefronts smaller than 32)
another fix for out-of-bounds check (there was no assert for this previously)
2011-08-03 20:21:23 +00:00
erwin.coumans cf0d948d97 update to the latest version of HACD (hierarchical approximate convex decomposition, http://sourceforge.net/projects/hacd)
Thanks to Khaled Mammou for the fix.
2011-07-24 02:01:32 +00:00
erwin.coumans c7b8035556 make things compile again 2011-07-07 21:50:35 +00:00
erwin.coumans 096389153b add HACD also to the AllBulletDemos (it includes the ConvexDecompositionDemo) 2011-07-07 00:44:53 +00:00
erwin.coumans 996bcb18ee Added HACD library by Khaled Mamou, for improved convex decomposition
See also http://sourceforge.net/projects/hacd/ and http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=4&t=6619
Thanks to Sujeong Kim for the integration with the Bullet/Demos/ConvexDecompositionDemo
2011-07-07 00:28:15 +00:00
erwin.coumans 16cc5665de fix in the breaking constraints feature 2011-07-01 21:51:38 +00:00
erwin.coumans 251bb4e727 remove the 'exit' calls from the OpenCL soft body solver. Use the solver->checkInitialized() method, after solver->optimize() to see if the kernels build OK. 2011-06-30 00:23:42 +00:00
erwin.coumans 4cc502b24a remove aspect ratio check from demo graphics, see also http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=6944 2011-06-21 01:40:34 +00:00
erwin.coumans fcb1448f21 fix member variable name 2011-05-22 11:01:46 +00:00
erwin.coumans b80e5fd167 Remove co-planar faces from convex hull, using 2d Graham scan
Improve SAT performance, by skipping back-facing features
Add assert in array class (probably fires in places)
2011-05-20 12:29:24 +00:00
erwin.coumans 20e95be9cd Fix regression issue: transform is not identity in case of softbody colliding against btCompoundShape.
Fix issue 512
2011-05-11 20:51:57 +00:00
erwin.coumans cce582d905 Add support for AMDAPPSDKROOT environment variable
Initialize vSolveLinksKernel OpenCL cloth kernel (although kernel is unused)
Fixes Issue 508
2011-04-23 16:01:44 +00:00
erwin.coumans 6ccd5a644a implement stub function for clGetProgramInfo to avoid linker errors
Fixes Issue 510
2011-04-23 15:47:49 +00:00
erwin.coumans 0722e25399 attempt to have doxygen parse the macros.
See also https://bugzilla.gnome.org/show_bug.cgi?id=646003
2011-04-18 17:47:49 +00:00
erwin.coumans d9a1a1d415 fix bug in the OPC_ArraySAP.cpp (used in Extras/CDTestFramework to compare agains Bullet broadphases)
Thanks to Olli-Pekka Räsänen for the report, mentioned by Pierre Terdiman in his blog:
http://www.codercorner.com/blog/?p=475
2011-04-18 00:08:48 +00:00
erwin.coumans 7dd0cbb726 fix OSX compilation 2011-04-15 19:17:34 +00:00
erwin.coumans 1b305562be Added Pierre Terdiman's 'internal object' optimization to improve performance for separating axis tests.
Make the winding consistent in btConvexHullComputer (and related fixes in btPolyhedralConvexShape), thanks to Ole!
Some fixes in the btPolyhedralContactClipping implementation (never report a penetration deeper than GJK/EPA found, to avoid issues due to its approximate contact normal directions)
Properly visualize btPolyhedralConvexHullShape that have a  btConvexPolyhedron (by calling initializePolyhedralFeatures() method)
2011-04-15 18:37:28 +00:00
erwin.coumans 7d37b3c472 add support for PosixThreadSupport for MiniCL (partial CPU OpenCL replacement) 2011-04-11 16:28:21 +00:00
erwin.coumans 8bc27b39f7 bump up version to 2.78 in a few places missed previously,
fixing issue 506
2011-04-11 15:28:55 +00:00
erwin.coumans ab7120835f remove msvc/2005, update msvc/2008 2011-04-09 04:31:13 +00:00
erwin.coumans 1c9b2d4224 update changelog 2011-04-09 04:05:09 +00:00
erwin.coumans 1e7b9de339 fixes for unix/autotools 2011-04-09 03:57:48 +00:00
erwin.coumans 9a9a4394ab fix in btParallelConstraintSolver to support double precision
fixes in SAT/polyhedral contact clipping, avoid adding GJK contacts (the contact margin causes different contact depths)
add polyhedral convex shape in InternalEdgeDemo as example of the new SAT/polyhedral contact clipping (added reference to Manual/what's new)
avoid glueing objecs with contacts that are positive (no gaps)
2011-04-09 03:40:15 +00:00
erwin.coumans cdddf9d25a add FractureDemo to AllBulletDemos
improvements in CCD handling
some cleanup of CcdPhysicsDemo and BasicDemo
2011-04-09 01:14:21 +00:00
erwin.coumans 2291a6a9d3 small update on Bullet Physics Manual (revision number, what's new for 2.78) 2011-04-07 20:48:50 +00:00
erwin.coumans e9f2176804 fixes in AllBulletDemos OSX projectfile 2011-04-07 17:08:21 +00:00
erwin.coumans e6044a1086 re-enabled m_maxEdgeAngleThreshold and m_edgeDistanceThreshold 2011-04-07 16:46:22 +00:00
erwin.coumans d80805d40c apply the DX11 cloth fix to allow DLL usage, see Issue 494 2011-04-07 16:19:51 +00:00
erwin.coumans a4e8213ede Implemented btDiscreteDynamicsWorld::addSpeculativeContacts, using conservative advancement to find contact point ahead of time
make Extras/ConvexDecomposition thread safe, Issue 501
some improvements to the btInternalEdgeUtility, patch from Issue 501
2011-04-07 06:23:34 +00:00
erwin.coumans 49630e9c77 improvements in separating axis test / polyhedral clipping support.
improved debug rendering for polyhedra
allow to dynamically switch between gjk and sat test to compute separating axis (independent from the polyhedral clipping)
2011-04-07 03:59:14 +00:00
erwin.coumans 563654fb6e Add soft body anchor 'm_influence' to control the solver.
Thanks to Gregory Jaegy, see Issue 502
Avoid using btTransform to update btSoftBody (bounds are already in worldspace)
Use btConvexHullComputer for soft body cluster debug rendering
Fix soft body demo issue of invisible soft bodies (rendering was not enabled properly)
2011-04-05 20:32:59 +00:00
erwin.coumans 624dac6128 Make btParallelConstraintSolver 64-bit ready
add an optional assert method for the btCollisionDispatcher, to make sure the contact pool is contiguous (needed for btParallelConstraintSolver)
2011-04-04 22:38:56 +00:00
erwin.coumans d419f79770 fixes to make MultiThreadedDemo work in 64bit, ParallelConstraintSolver won't work yet, only the parallel collision dispatcher 2011-04-03 19:30:26 +00:00
erwin.coumans 1fb2fa3db9 put an #ifdef in PosixThreadSupport in the right location 2011-04-02 20:13:50 +00:00
erwin.coumans b16b61d9d6 disable constraints when they exceed a breaking threshold, control it with new methods in btTypedConstraint: get/setBreakingImpulseThreshold and get/setEnabled
Disabled constraints are not removed from the world and they use negligible CPU cycles
2011-04-02 19:01:23 +00:00
erwin.coumans d198451909 clear the applied impulse for constraints (no warmstarting)
simplify logic, see Issue 499
2011-04-02 00:44:15 +00:00
erwin.coumans 46be84741c fix an issue in the ConvexDecompositionDemo, replacing std::vector by btAlignedObjectArray. 2011-04-01 18:09:31 +00:00