Commit Graph

2143 Commits

Author SHA1 Message Date
Erwin Coumans
8e554a0c1b allow creation of multiple shared memory segments 2017-01-06 09:49:03 -08:00
erwincoumans
a5ecbbc682 Merge pull request #898 from erwincoumans/master
many pybullet / VR improvements
2016-12-27 15:57:17 -08:00
Erwin Coumans
a4cf0c8b11 Linux clock_gettime needs rt / librt, so put it behind BT_LINUX_REALTIME for now. 2016-12-26 22:00:39 -08:00
Erwin Coumans
7aa7c4dfee Linux needs #include <time.h>?
/home/travis/build/bulletphysics/bullet3/src/LinearMath/btQuickprof.cpp:251:19: error: ‘CLOCK_REALTIME’ was not declared in this scope
/home/travis/build/bulletphysics/bullet3/src/LinearMath/btQuickprof.cpp:251:37: error: ‘clock_gettime’ was not declared in this scope
2016-12-26 21:15:59 -08:00
Erwin Coumans
0917310521 add nanosecond resolution for Mac OSX clock / about://tracing timings 2016-12-23 18:18:35 -08:00
Erwin Coumans
4c06fd27b3 Example Browser: add option (keypress 'p') to dump json timing profile trace, that you can open using Chrome about://tracing
Make btQuickprof thread safe
Add option in btQuickprof to override custom timing profile (btSetCustomEnterProfileZoneFunc, btSetCustomLeaveProfileZoneFunc)
remove b3Printf in a user/physics thread (those added added, while drawing the GUI running in the main thread)
2016-12-23 15:20:04 -08:00
Lunkhound
6d2c7b9aba constraint solver: fix bug in getOrInitSolverBody (threadsafe case only) for kinematic objects 2016-12-19 21:31:38 -08:00
Erwin Coumans
e0c46f4b1a Fix contact normal issue if disabling/using small margins, See Issue #889
See Issue #889 : GJK/EPA: use smaller tolerances in BT_USE_DOUBLE_PRECISION mode
2016-12-18 18:37:53 -08:00
Erwin Coumans
379a852f93 fix compile issues 2016-12-16 18:43:21 -08:00
Erwin Coumans
8ff1e55166 disable VERBOSE_RESIDUAL_PRINTF 2016-12-16 18:12:33 -08:00
Erwin Coumans
dcd02a1e15 add option to terminate PGS constraint solvers based on a least square residual threshold
(for example solverInfo().m_leastSquaresResidualThreshold = 1e-7 and use large m_numSolverIterations
disable sphere-sphere contact cache, it is buggy (some contact point stay in the cache, when sphere penetrates more than total margins)
tweak some gpu demo settings
2016-12-16 18:09:52 -08:00
Erwin Coumans
38b10137c9 allow to terminate btSolveProjectedGaussSeidel MLCP solver based on a least squares residual threshold (m_leastSquaresResidualThreshold) 2016-12-16 14:30:12 -08:00
Erwin Coumans
032e0fb3ce Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-12-11 09:17:04 -08:00
Erwin Coumans
710ac09b56 fix clearVelocities (should use 6+dofCount, not 6+numLinks
fixes issue 878
2016-12-11 09:16:18 -08:00
Erwin Coumans
15cda75130 add <restitution> in <contact> settings of URDF/SDF
allow 'useMaximalCoordinates' and 'useFixedBase' in pybullet.loadURDF.
enable split impulse for btRigidBody, even in btMultiBodyDynamicsWorld.
allow initialization of velocity and apply force for btRigidBody in pybullet/shared memory API.
process contact parameters in URDF also for btRigidBody (friction, restitution etc)
add pybullet.setPhysicsEngineParameter with numSolverIterations, useSplitImpulse etc.
2016-11-30 22:24:20 -08:00
erwincoumans
0516d2ecaa allow getClosestPoints for btCompoundCollisionAlgorithm and btSphereTriangleCollisionAlgorithm
add optional 'lightColor' arg to testrender.py script
2016-11-22 10:11:04 -08:00
erwincoumans
0d5dcb3cc5 setDebugObjectColor 2016-11-21 07:42:11 -08:00
erwincoumans
9ee1c4ec24 regular OR wireframe rendering, not both
add option to perform filtering of 'getClosestPoints' using linkA/linkB.
don't use 'realtimesimulation' as default
add/remove debug items within same thread
pybullet, report contact points and normal as [x,y,z] triplet/vector, not 3 scalars
separate 'getClosestPointsAlgorithm': box-box doesn't report closest points with positive distance, and the query shouldn't impact regular 'closesst points'
2016-11-19 17:13:56 -08:00
Lunkhound
2f4ec4f8c9 collisionObject: renamed uniqueId to worldArrayIndex; removed linear search in removeCollisionObject 2016-11-12 12:41:55 -08:00
Erwin Coumans
3b5d0f444b various fixes
move btSimulationIslandManagerMt.cpp from BulletCollision to BulletDynamics
2016-11-10 16:18:20 -08:00
erwincoumans
4c2c2bf74b Merge pull request #858 from erwincoumans/master
pybullet getClosestPoints collision query. center gripper (1 version)
2016-11-10 12:08:17 -08:00
erwincoumans
b16d9abddd center the gripper
fix collision issue, introduced in previous commit (uninitialized new variable)
2016-11-09 22:14:04 -08:00
erwincoumans
0d47d61007 pybullet getClosestPoints 2016-11-09 21:01:04 -08:00
erwincoumans
dced3521a2 Merge pull request #848 from Kotolegokot/master
Fix a little typo
2016-11-06 13:45:13 -08:00
erwincoumans
214930922d make sure m_uniqueIdGenerator in btSerializer is initialized to zero, it can cause issues if not. 2016-11-05 12:53:40 -07:00
erwincoumans
5d66ce20e0 network UDP: transmit structural DNA to deal with version/platform differences.
pybullet: allow to specify shared memory key and hostname/port for UDP.
2016-11-04 17:06:55 -07:00
yunfeibai
ff2c79e6bc Fix a bug in softbody contact handling. 2016-11-03 12:14:39 -07:00
yunfeibai
e8635932cf Merge remote-tracking branch 'upstream/master' 2016-11-03 10:26:52 -07:00
erwincoumans
908cb2def2 Merge pull request #851 from erwincoumans/master
serialization structures update, needed to be done since
2016-11-03 09:11:36 -07:00
erwin coumans
f74a35bacb serialization structures update, needed to be done since
recent addition of src/BulletCollision/CollisionDispatch/btCollisionObject.h
recent (since august 26, 2016) serialization dumps my be corrupt.
2016-11-03 07:11:31 -07:00
yunfeibai
479497997c Add grasp bunny example with multibody gripper. 2016-11-02 14:53:28 -07:00
yunfeibai
ab6ce65abe Add contact handling between multibody and softbody. 2016-11-02 13:21:01 -07:00
yunfeibai
3c37db0804 Add API to set bunny properties. Add example to show coupling between softbody and multibody. 2016-11-01 16:45:10 -07:00
Kotik Andreev
bc34d0129e Fix a little typo 2016-10-31 01:45:44 +03:00
Lunkhound
1c3686ca51 MultiThreaded Demo:
- fixing various race conditions throughout (usage of static vars, etc)
 - addition of a few lightweight mutexes (which are compiled out by default)
 - slight code rearrangement in discreteDynamicsWorld to facilitate multithreading
 - PoolAllocator::allocate() can now be called when pool is full without
     crashing (null pointer returned)
 - PoolAllocator allocate and freeMemory, are OPTIONALLY threadsafe
     (default is un-threadsafe)
 - CollisionDispatcher no longer checks if the pool allocator is full
     before calling allocate(), instead it just calls allocate() and
     checks if the return is null -- this avoids a race condition
 - SequentialImpulseConstraintSolver OPTIONALLY uses different logic in
     getOrInitSolverBody() to avoid a race condition with kinematic bodies
 - addition of 2 classes which together allow simulation islands to be run
   in parallel:
    - btSimulationIslandManagerMt
    - btDiscreteDynamicsWorldMt
 - MultiThreadedDemo example in the example browser demonstrating use of
   OpenMP, Microsoft PPL, and Intel TBB
 - use multithreading for other demos
 - benchmark demo: add parallel raycasting
2016-10-30 12:47:27 -07:00
yunfeibai
3dc56d7e92 Add files. 2016-10-17 23:46:56 -07:00
yunfeibai
e112b15281 Move btSoftMultiBodyDynamicsWorld to BulletSoftBody. 2016-10-17 23:40:38 -07:00
yunfeibai
3ffd95fbab Merge remote-tracking branch 'origin/master' 2016-10-17 13:20:31 -07:00
erwin coumans
29f3afe2a4 don't use GL_LINEAR_MIPMAP_LINEAR for shadow maps
optimize gpu upload (use glBufferSubData instead of glMapBuffer
Avoid checking char array against zero.
2016-10-14 15:06:09 -07:00
yunfeibai
4fe86d2a1d Add btSoftMultiBodyDynamicsWorld. 2016-10-11 16:15:44 -07:00
erwin coumans
ddff1bcdc0 remove some useless global constants, move them right into the constructor 2016-10-07 09:00:49 -07:00
erwin coumans
b81eb79ef5 ping-pong back/forward in PGS solving iterations to reduce bias in constraint order
add experimental rhs clamp in btMultiBodyJointMotor to control maximum error resolution.
2016-09-28 11:17:11 -07:00
Erwin Coumans
96c1ee4256 revert default contact 'erp' (error-reduction-parameter) from 0.8 to 0.2
as it used to be.
2016-09-26 07:55:30 -07:00
Erwin Coumans
6563c9c821 add btVector3::safeNorm to avoid/workaround certain clang/g++ issue or returning -INF
when taking sqrtf(0.0000000000000000000000000000000000000108333558)
2016-09-25 23:13:23 -07:00
erwincoumans
c979f147e6 Update btQuaternion.h
add missing ; after btAssert
2016-09-25 15:12:19 -07:00
erwincoumans
0dfe20c036 Merge pull request #759 from MichaelMcDonnell/warnings
Two bugs
2016-09-23 22:15:16 -07:00
erwincoumans
278a89f7c3 Merge pull request #804 from erwincoumans/master
fix uninitialized variable in btMultiBody
2016-09-23 22:13:36 -07:00
erwincoumans
d3bf740c50 Merge pull request #446 from T4Larson/slerpfix
fix: btQuaternion.slerp() may result in NaN-quaternions
2016-09-23 22:03:01 -07:00
erwincoumans
fe6c8775da fix uninitialized variable in btMultiBody
use btAssert to detect 0 determinant in btMatrix3x3 inverse
Remove obsolete comment in PosixSharedMemory, the Windows shared memory implementation was done over a year ago
2016-09-23 21:59:38 -07:00
erwincoumans
5c1d2f9a0e Merge pull request #789 from mwoehlke-kitware/remove-useless-const
Remove useless const qualifiers from returns
2016-09-21 08:12:11 -07:00