Commit Graph

2267 Commits

Author SHA1 Message Date
David Ávila
88758e44cb Add comments to btCollisionWorld 2017-10-23 08:50:24 +02:00
David Ávila Membrives
2cc9ff2176 Optimize rayTest with btScaledBvhTriangleMeshShape 2017-10-19 22:55:18 +02:00
Erwin Coumans
c480fab9a0 make btMultiBodyFixedConstraint.cpp linear/angular constraint frame consistent 2017-10-18 19:47:32 -07:00
Filip Gawin
250c7d4407 Fix jump(without argument)
Actually jump require btVector3,
unfortunately default argument isn't using
constructor with initialization.

http://bulletphysics.org/Bullet/BulletFull/classbtVector3.html#a82b4c5da54ecd4c91bd9b056dea0d288
2017-10-18 10:31:45 +02:00
AndreaCatania
45558fc25a Implemented callbacks to customize combining algorithm of Friction, Restitution, etc.. 2017-10-15 11:42:02 +02:00
Erwin Coumans
c21e7a8a8e fix potentially uninitialized data warning 2017-10-14 10:16:33 -07:00
Giuseppe Barbieri
b81252fbc4 Update btVector3.h 2017-10-08 10:49:20 +02:00
erwincoumans
fe38e827cd Merge pull request #1363 from elect86/patch-1
Typo
2017-10-07 16:33:12 -07:00
Giuseppe Barbieri
8755f51bec Typo 2017-10-07 16:58:38 +02:00
Giuseppe Barbieri
b31f372e3b Typo 2017-10-07 13:47:34 +02:00
erwincoumans
6e4707df5f Merge pull request #1349 from piluke/patch-1
Fix a shadow warning by renaming a parameter in btInfMaskConverter
2017-09-29 16:20:39 -07:00
Luke
1360641ad9 Fix a shadow warning by renaming a parameter in btInfMaskConverter 2017-09-29 15:44:14 -05:00
Erwin Coumans
abdcb0a5a1 remove b3GjkPairDetector.cpp from cmake 2017-09-29 12:53:34 -07:00
erwincoumans
a632b6c6a4 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-09-29 08:01:11 -07:00
erwincoumans
17115f38c2 add some timings, small fix in btSoftBody related to btMultiBody interaction 2017-09-29 07:50:04 -07:00
Erwin Coumans
dae8af0a78 remote b3GjkPairDetector, it is obsolete and unused, causing clang compile problems
see https://github.com/bulletphysics/bullet3/issues/1347
2017-09-28 15:45:14 -07:00
erwincoumans
8a265b8af2 expose gear erp/relative position target to C-API/pybullet
finish much better C++ vrSyncPlugin, running in-the-loop with the physics at high frequency, see also vr_kuka_setup_vrSyncPlugin.py
2017-09-26 19:54:36 -07:00
erwincoumans
83805da531 Merge pull request #1336 from bingjeff/fix_bugs_in_jacobian
[sharedmemory] Fill-out calculateJacobian command.
2017-09-24 21:15:42 -07:00
erwincoumans
f88973f832 Merge pull request #1286 from mendsley/clean_vbt_allocations
Optimize Dbvt trees in place
2017-09-24 20:35:57 -07:00
Jeffrey Bingham
ee30ca93c5 [sharedmemory] Fill-out calculateJacobian command.
The server command processor actually didn't do anything with
the local point that was passed along with the calculateJacobian
command. Added in the necessary bit of math to return the
corresponding jacobian.

Also, fixed a typo in pybullet that was returning the same
jacobian for translation and rotation.
2017-09-24 18:57:48 -07:00
Erwin Coumans
70364445b8 Merge remote-tracking branch 'bp/master' 2017-09-24 09:49:53 -07:00
Jeffrey Bingham
1727e47beb [pybullet] Add calculateJacobian.
* Add the calculateJacobian method to the pybullet API.
* Adjust the shared memory interface to handle fixed/floating bases
  in the calculateJacobian method.
* Fix a few comments.
2017-09-23 19:58:59 -07:00
erwincoumans
312e35964f make some code const correct. 2017-09-22 07:53:21 -07:00
Erwin Coumans
06b695e051 remove some warning ,see also Pull Request #302
bump up pybullet version
2017-09-14 08:08:24 -07:00
erwincoumans
4a6bc7c95f Merge pull request #1289 from lolengine/fix-one-sided-softbodies
Fix one-sided soft bodies.
2017-09-14 07:42:41 -07:00
erwincoumans
6f51d81cbb Revert "Export targets in CMake and add include directories to target properties" 2017-09-10 21:20:54 -07:00
Markus Rickert
fbffb246fe Export targets in CMake and add include directories to target properties 2017-09-10 23:43:50 +02:00
erwincoumans
920031c488 Merge pull request #1297 from erwincoumans/master
Add Extras/BulletRobotics library for Roboschool, 	Re-enable Physics Server (Logging) and Physics Server (Replay Log), small fixes
2017-09-06 23:01:15 -07:00
Erwin Coumans
7878f7ace9 Add Extras/BulletRobotics, will be installed as 'Extra Libs' using CMake
Reduce size of command-logfile (used in PhysicsServer (Logging) and PhysicsServer (Log Replay))
Make Bullet3Common and BulletInverseDynamics part of core Bullet libraries (not optional)
2017-09-06 13:18:39 -07:00
erwincoumans
db8c0853b3 Merge pull request #1290 from lolengine/fix-const-removal
Make btHashString const-correct by changing a target pointer type.
2017-09-02 13:24:38 -07:00
erwincoumans
eb97e06280 fix minitaur.urdf: move lower-leg inertia to center, add missing collision for one of the motors, add contact parameters for friction_anchor, spinning friction, compliance (stiffness/damping)
fix in indexing for maximal coordinates (unused by default, still experimental, requires many iterations for Minitaur due to extreme mass-ratio, hence use of reduces/generalized coordinates)
modify quadruped.py to test maximal coordinates
wrap angular servo (positional) target within [-PI,PI] in btGeneric6DofSpring2Constraint
add 'j' key to show body frames in wireframe/debug mode
2017-09-02 01:05:42 -07:00
Sam Hocevar
d8b5ebd818 Make btHashString const-correct by changing a target pointer type. 2017-09-01 20:02:58 +02:00
Sam Hocevar
903cc96c1a Fix one-sided soft bodies.
A coding mistake in btSoftBody::addAeroForceToNode() was applying forces
in the wrong direction for one-sided soft bodies.
2017-09-01 18:47:46 +02:00
Matthew Endsley
4c00b674b3 Optimize Dbvt trees in place
Instead of allocating new vectors for each partition, simply partion the
nodes in place and pass the corresponding ranges to the next phase.
2017-08-30 10:27:38 -07:00
erwincoumans
be7ddfcc5c Merge pull request #1221 from Wugand/patch-1
Fix for memory leak at btCreateCompoundFromGimpactShape
2017-08-25 08:30:07 -07:00
erwincoumans
a4f28e1589 Merge pull request #1219 from lunkhound/pr-nncg
NNCG solver: apply rolling friction consistently
2017-08-18 13:31:54 -07:00
erwincoumans
457312f94f fix leak in loadSDF in case of visuals with duplicate/identical names that have a material.
fix GUI performance issue on Mac OSX
fix issue introduced in previous commit (in btConvexHullComputer.cpp)
2017-08-11 17:14:52 -07:00
Erwin Coumans
c67a70cb09 compile fixes 2017-07-29 13:40:03 +02:00
Wugand
b7011a864b Fix for memory leak at btCreateCompoundFromGimpactShape
This is an fix for issue #1213
2017-07-03 11:08:36 +02:00
Lunkhound
b7f35000aa NNCG solver: apply rolling friction consistently regardless of the solver flags 2017-07-02 21:12:25 -07:00
Erwin Coumans
dd3d55610b fixes in pybullet.loadTexture, changeVisualShape replacing texture.
(also works for OpenGL3 renderer now)
2017-06-30 13:35:07 -07:00
erwincoumans
b4f21e77af Merge pull request #1206 from erwincoumans/master
Allow to create concave collision meshes. Transparency (only OpenGL 3.x renderer, not tinyrenderer/gl2)
2017-06-24 20:07:17 -07:00
Erwin Coumans
65e22ba3e9 allow auxilary link to be used for gear btMultiBodyGearConstraint. 2017-06-23 20:24:04 -07:00
erwincoumans
c48f5b1546 Merge pull request #1182 from lunkhound/pr-fix-solver-simd
SequentialImpulseConstraintSolver: fix bugs with SOLVER_SIMD flag
2017-06-20 12:19:15 -07:00
Erwin Coumans
bb8cfe3c9a pybullet.getAABB and getAPIVersion
fix btMultiBody::getLinkCollider
bump up Bullet C-API version
2017-06-15 19:46:27 -07:00
Erwin Coumans
d17faddff2 fix for b3RequestActualStateCommandComputeLinkVelocity/getLinkState link velocities for static links 2017-06-13 13:51:38 -07:00
Lunkhound
e9ec5044d1 SequentialImpulseConstraintSolver: fix bugs with SOLVER_SIMD flag 2017-06-10 04:33:40 -07:00
Erwin Coumans
4a7469a1ba fix uninitialized-variable issues (were unused initialized, but triggers some memory checking tools) 2017-06-09 21:19:02 -07:00
Erwin Coumans
46f2f3db4e implement 'mimic' joint constraint or 'gear' constraint for btMultiBody, add example in pybullet/examples/mimicJointConstraint.py 2017-06-07 16:22:02 -07:00
erwincoumans
7b56db9f97 fix compile issue/warning 2017-06-06 06:59:41 -07:00
lunkhound
6bf3d4e08e Merge branch 'master' into pr-fix-thread-index 2017-06-05 00:33:02 -07:00
Erwin Coumans
a7aed37632 work on pybullet/C-API createMultiBody (still preliminary, only sphere/box collision shapes, no links/hierarchies yet, soon)
pybullet/C-API, expose linear/angular damping
fix some warnings (param name needs to be same in .h and .cpp)
fix potential startup threading issue (args were deleted in main thread while still possibly use in child thread)
fix for spinning/rolling friction in case of mixing maximal and reduced coordinate btMultiBody+btRigidBody
2017-06-04 22:04:16 -07:00
Lunkhound
0fc3ce69e9 fix thread index going out of range bug 2017-06-03 18:03:59 -07:00
Erwin Coumans
ff695dd328 Merge remote-tracking branch 'bp/master' 2017-06-03 08:16:59 -07:00
yunfeibai
708a430e30 comment out btThreadsAreRunning which does not build. 2017-06-02 18:32:39 -07:00
yunfeibai
bfcbb339cf Merge remote-tracking branch 'upstream/master' 2017-06-02 18:26:04 -07:00
yunfeibai
e2a9fc33dc Remove debug code. 2017-06-02 17:40:50 -07:00
yunfeibai
3506603d60 Test conversion from view matrix to yaw pitch roll. 2017-06-02 16:56:05 -07:00
Erwin Coumans
1d1c822d52 btThreadsAreRunning wasn't defined if BT_THREADSAFE was not defined, causing compile errors using premake 2017-06-02 16:25:28 -07:00
erwincoumans
518c7ec00e Merge pull request #1144 from lunkhound/pr-threading-refactor
Bullet 2 threading refactor: moved parallel-for calls into core libs
2017-06-02 16:18:12 -07:00
erwincoumans
3987bdd333 remove pose frame from SDF,
allow plane collision shape in SDF
load the Roboschool stadium.sdf in humanoid_knee_position_control.py
2017-06-01 20:13:39 -07:00
Lunkhound
34e2c1b784 add profiling info 2017-05-29 23:53:35 -07:00
erwincoumans
5436b8f048 print better error warning, in case the physics client/server version mismatch.
fix in b3HashString
remove many unused dependencies from kuka_grasp_block_playback.py (time,math, datetime ,numpy,pylab ,sys, os, fnmatch,argparse were not used!)
move block_grasp_log.bin from Bullet3/data to Bullet3/examples/pybullet/examples/data folder.
PhysicsServerCommandProcessor, derive from CommandProcessorInterface to prepare for different back-end implementation
2017-05-28 17:05:18 -07:00
Erwin Coumans
b645963879 expose pybullet changeDynamics(spinningFriction=..., rollingFriction=..., restitution=...)
Bullet C-API b3ChangeDynamicsInfoSetSpinningFriction/RollingFriction/Resitution
b3PhysicsParamSetRestitutionVelocityThreshold, / pybullet.setPhysicsEngineParameter restitutionVelocityThreshold:
if the velocity is below this threshhold, the restitution is zero (this prevents energy buildup at near-resting state)
pybullet restitution.py example.
2017-05-26 18:14:38 -07:00
Lunkhound
d77c3d5b68 fix compile errors in non-threadsafe build 2017-05-23 02:34:29 -07:00
Lunkhound
dfe184e8d3 Bullet 2 threading refactor: moved parallel-for calls into core libs 2017-05-23 01:01:20 -07:00
erwincoumans
ba22f4a4dc Merge pull request #1126 from erwincoumans/master
allow to enable/disable VR picking and VR teleport. Disabling VR pick…
2017-05-16 13:55:47 -07:00
Erwin Coumans
433d11d8cf Add a btIDEbugDraw::clearLines, helps multi-threaded rendering of lines (while updating those lines in a dynamics world in a different thread)
Expose COV_ENABLE_VR_RENDER_CONTROLLERS, to enable/disable rendering of controllers (and some frames) in VR
Expose COV_ENABLE_RENDERING to enable/disable rendering.
Fix some multi-threading issues (potential crashes), related to debug drawing/rendering in one thread, while changing the dynamics world/removing/resetSimulation in a different thread.
2017-05-16 12:19:03 -07:00
Andrew Meadows
81758bf1b3 'powered' is bool not int 2017-05-12 15:47:03 -07:00
Andrew Meadows
4a1c682c3c fix typo: Velosity-->Velocity 2017-05-12 15:46:01 -07:00
erwincoumans
9356019572 Merge pull request #1116 from olegklimov/master
Rewrite collision filtering code for C API
2017-05-12 20:56:26 +00:00
Erwin Coumans
424a29474f fix for division by zero, in case angular velocity goes close to zero
(but not zero)
2017-05-11 17:45:01 -07:00
Oleg Klimov
f4943c3ed5 Fix self-collision code again (in case both flags are set) 2017-05-11 14:30:07 +03:00
erwincoumans
9a80b529d8 Merge pull request #1112 from erwincoumans/master
bump up setup.py pybullet pypi pip version to 1.0.2
2017-05-10 23:19:21 +00:00
Erwin Coumans
53a82819a0 expose b3LoadMJCFCommandSetFlags / pybullet.pybullet_loadMJCF(fileName,flags=pybullet.URDF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS) 2017-05-10 15:01:25 -07:00
Erwin Coumans
fc6fb7b14c initialize values (padding etc) help asan/msan tests 2017-05-09 18:00:28 -07:00
Erwin Coumans
0d3940b8bd fix signed-integer-overflow issue:
Hash functions rely on 2's complement behaviour. Use unsigned integers to get that.
2017-05-09 16:36:11 -07:00
Erwin Coumans
18dbf6f018 Merge remote-tracking branch 'bp/master' 2017-05-08 09:08:50 -07:00
Erwin Coumans
a69442d119 Some optimizations for btMultiBodyJointMotor (skip constraint generation if maxImpulse/maxForce = 0) and
skip constraint row generation if joint limit is not violated.
2017-05-08 09:06:39 -07:00
Gregery Barton
72b0b76b64 getSolveSwingLimit() returns wrong value
Should return m_solveSwingLimit instead of m_solveTwistLimit
2017-05-06 11:45:26 +10:00
erwincoumans
f76f3e2ba7 Merge pull request #1093 from erwincoumans/master
expose profileTiming to pybullet/b3RobotSimulatorClientAPI.h
2017-05-05 01:29:26 +00:00
Erwin Coumans
1f64a87abe Improve ChromeTraceUtil logging, allow filename to be specified.
Expose this ChromeTraceUtil  logging to C-API: start/statelogging and submitProfileTiming
pybullet.submitProfileTiming, and STATE_LOGGING_PROFILE_TIMINGS used in startStateLogging
added example for Python profileTiming.py and C++ b3RobotSimulatorClientAPI::submitProfileTiming
2017-05-04 17:51:40 -07:00
erwincoumans
92d7a0850f Merge pull request #1090 from gregeryb/patch-3
Collider object not necessary
2017-05-04 20:34:21 +00:00
Erwin Coumans
61999ef789 b3ResizablePool: only remove a handle, if it is currently in-use
also remove user constraints, if removing a body
2017-05-04 13:14:24 -07:00
Erwin Coumans
a7d08ca9d7 Merge remote-tracking branch 'bp/master' 2017-05-04 10:51:42 -07:00
erwincoumans
87a24dba84 Merge pull request #1091 from YunfeiBai/master
Add APIs to reset object mass, lateral friction coefficient, and to get user constraint id.
2017-05-04 17:47:33 +00:00
Erwin Coumans
a86f584824 more work towards removeBody for C-API/pybullet, work-in-progress. 2017-05-03 21:53:29 -07:00
yunfeibai
939d6ead32 Add API to reset lateral friction coefficient. 2017-05-03 21:47:53 -07:00
Erwin Coumans
152e3da3e4 Implementation of virtual void CommonRenderInterface::removeGraphicsInstance(int instanceUid)
for GLInstancingRenderer (OpenGL3+) and SimpleOpenGL2Renderer (OpenGL2)
Refactored the add/remove object pool in Bullet3Common/b3ResizablePool.h
Added CommonRigidBodyBase::deleteRigidBody, also removing its graphics instance.
2017-05-03 17:05:05 -07:00
Gregery Barton
03742208f1 Collider object not necessary
Collider object not necessary without DBVT_BP_ACCURATESLEEPING defined
2017-05-04 05:22:00 +10:00
Erwin Coumans
6f7601966d fix issue ,don't iterate over [0..numBodyHandles], would fail once we allow 'removeBody'... 2017-05-03 11:23:01 -07:00
Erwin Coumans
2c8f65a2d0 move body handles in its own template class, for re-use. 2017-05-03 10:49:04 -07:00
Erwin Coumans
9fef6c1d66 Add C++ version VRGloveSimulatorMain example, using the serial library.
First run the App_PhysicsServer_SharedMemory_VR_vs2010.exe to run the VR server,
then run App_VRGloveHandSimulator. You likely need to tune the minV/maxV for each finger (check values using Arduino IDE Serial Monitor)
2017-05-01 22:35:33 -07:00
Erwin Coumans
af6bf8ddc8 plumb URDF/SDF audio_source into PhysicsServerCommandProcessor, allow to play sounds on collision !
See also https://youtu.be/eppOjTfx5Jg for a first test, and this modified URDF how to add sounds:
https://github.com/bulletphysics/bullet3/blob/master/data/plane_with_collision_audio.urdf
Add the --audio flag to enable sound in pybullet/Bullet-C-API
2017-05-01 11:14:09 -07:00
Erwin Coumans
e32debdca4 improvements in MJCF importer: fix capsule shape inertia (for fromto definition)
add cylinder support
don't crash when no "quat" is provided
inertia fix in btMinkowskiSumShape (based on AABB)
2017-04-05 12:22:38 -07:00
Erwin Coumans
e5290560d7 avoid checking beyond string length in b3CommandLineArgs.h 2017-03-30 13:54:32 -07:00
nicolaichuk
1122afc2f4 Merge branch 'Branch_2.86.1' 2017-03-30 01:48:39 +03:00
nicolaichuk
ccecb4db62 revert add compare operation 2017-03-30 01:47:43 +03:00
nicolaichuk
2c6c64ca8a Merge remote-tracking branch 'remotes/bulletphysics/master' 2017-03-29 18:22:53 +03:00
nicolaichuk
2466df1c5a Merge branch 'Branch_2.86.1' 2017-03-29 18:21:42 +03:00
nicolaichuk
a359262678 remove redefine warning_message 2017-03-29 18:21:08 +03:00
nicolaichuk
f30464ebcb Revert "add compare operators in btAABB"
This reverts commit 18f17be47d.
2017-03-29 18:20:36 +03:00
nicolaichuk
ae07ce2ea7 * add BT_USE_INVERSE_DYNAMICS_WITH_BULLET2 2017-03-29 17:11:26 +03:00
Erwin Coumans
7503418c72 Split Bullet/src/LinearMath/btSerializer.cpp into btSerializer64.cpp to make it easier to rebuild serialization structure.
Add several MSVC optimization flags to cmake.
Bump up VERSION because serialization format changed
Expose btScalar& jointMaxForce, btScalar& jointMaxVelocity to 'getJointInfo2' API, add backwards compatibility to examples\Importers\ImportURDFDemo\URDFImporterInterface::getJointInfo.

pybullet: expose 4 more fields to getJointInfo: jointLowerLimit/jointUpperLimit/jointMaxForce/jointMaxVelocity
fix performance issue in CMD_ACTUAL_STATE_UPDATE_COMPLETED
2017-03-26 13:06:46 -07:00
erwincoumans
f27eb19633 revert m_linearDamping to previous (0.04f)
it broke many tests with empirical check values
2017-03-23 19:59:53 -07:00
Erwin Coumans
ee0e3ba271 Remove RobotLogging from CMakeLists.txt
Avoid crashing if threadIndex exceeds BT_QUICKPROF_MAX_THREAD_COUNT (64)
2017-03-23 18:00:00 -07:00
Erwin Coumans
21d1827c9f revert previous cmake copy->symlink (doesn't work on Windows)
fix timing issues at small timestep, disable default linear damping for btMultiBody
2017-03-23 17:30:59 -07:00
nicolaichuk
34228bb355 Merge branch 'Branch_2.86.1' 2017-03-23 17:48:23 +03:00
nicolaichuk
f68f821c89 rename Sructs to Structs 2017-03-23 17:47:44 +03:00
nicolaichuk
6063027181 fix "warning '<': signed/unsigned mismatch" 2017-03-23 15:24:27 +03:00
nicolaichuk
5144949ed8 add BT_USE_INVERSE_DYNAMICS_WITH_BULLET2 2017-03-23 15:17:29 +03:00
nicolaichuk
71e411c2ca fix warning "This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library" 2017-03-23 14:38:45 +03:00
nicolaichuk
5527e36139 Merge remote-tracking branch 'remotes/bulletphysics/master'
# Conflicts:
#	src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
2017-03-23 14:28:49 +03:00
nicolaichuk
8e1b146568 Merge branch 'Branch_2.86.1' 2017-03-23 14:24:32 +03:00
nicolaichuk
6decb7ad1a fix define call 2017-03-23 14:23:13 +03:00
nicolaichuk
703e66727c irr_simd_memcpy to gim_simd_memcpy 2017-03-23 14:22:18 +03:00
nicolaichuk
18f17be47d add compare operators in btAABB 2017-03-23 14:21:49 +03:00
nicolaichuk
bbf54cb05c remove inline in function definition 2017-03-23 14:20:58 +03:00
nicolaichuk
233dd51e02 update CMakeLists.txt 2017-03-23 14:19:13 +03:00
nicolaichuk
d26952acac add additional callback 2017-03-23 14:18:50 +03:00
nicolaichuk
1897939ec7 remove unimplemented method 2017-03-23 14:17:57 +03:00
nicolaichuk
3bf2f107b2 add default constructor 2017-03-23 14:17:13 +03:00
nicolaichuk
db065b8af8 fix redefinition 2017-03-23 14:15:51 +03:00
nicolaichuk
74b1044a05 move constructor for abstract class in protected 2017-03-23 14:14:14 +03:00
nicolaichuk
9360f1dca2 "btGImpactQuantizedBvh.h" divided into two files "btGImpactQuantizedBvh.h" and "btGImpactQuantizedBvhSructs.h" 2017-03-23 14:11:55 +03:00
nicolaichuk
3472a61216 "btGImpactBvh.h" divided into two files "btGImpactBvh.h" and "btGImpactBvhSructs.h" 2017-03-23 14:11:02 +03:00
nicolaichuk
b859ad7e4f "btContactProcessing.h" divided into two files "btContactProcessing.h" and "btContactProcessingSructs.h" 2017-03-23 14:10:17 +03:00
nicolaichuk
c7834e8e25 "btAxisSweep3.h" divided into two files "btAxisSweep3.h" and "btAxisSweep3Internal.h" 2017-03-23 14:08:54 +03:00
Erwin Coumans
61b28621ea minor fix in friction anchors for btMultiBody 2017-03-21 09:24:00 -07:00
Erwin Coumans
0c874aa43a fix issue introduced in previous commit, related to
btMultiBodyConstraintSolver friction/penetration handling
2017-03-20 19:38:59 -07:00
Erwin Coumans
0b017b0f53 fix issue with btMultiBody friction in combination with soft contacts (friction should not re-use normal contact cfm/erp)
implement friction anchors, position friction correction, disabled by default. Use colObj->setCollisionFlag(flag | CF_HAS_FRICTION_ANCHOR); See test/RobotClientAPI/SlopeFrictionMain.cpp. In URDF or SDF, add <friction_anchor/> in <contact> section of <link> to enable.
PhysicsServer: properly restore old activation state after releasing picked object
btMultiBodyConstraintSolver: disable flip/flop of contact/friction constraint solving by default (it breaks some internal flaky unit tests)
2017-03-20 10:58:07 -07:00
erwincoumans
a89d3cfb95 Merge pull request #1019 from erikogenvik/kinematic_controller_initialization
Kinematic controller initialization
2017-03-16 10:54:41 -07:00
Erwin Coumans
b7b46b12d3 update RobotSimulator/MinitaurSetup to use data/quadruped/minitaur.urdf
add b3RobotSimulatorClientAPI::getBaseVelocity and resetBaseVelocity
add b3Quaternion::getEulerZYX
2017-03-15 17:09:17 -07:00
Erwin Coumans
4db6fa9e29 update minitaur.py to use minitaur.urdf (instead of quadruped.urdf), also sort the legs in the same order as real hardware
added test urdf files for minitaur with all fixed joints, or fixed knees.
added some stiffness/damping to minitaur legs (testing)
tiny_obj_loader, don't crash on invalid texture coordinates
btMultiBodyConstraintSolver: sweep back and forward to reduce asymmetry
2017-03-15 15:38:50 -07:00
Erik Ogenvik
4ee09c264c Avoid using unitialized values.
m_gravity was used before it was initialized. Simplest way to avoid
it is to call any method first after all values are initialized.
2017-03-14 22:10:15 +01:00
Erwin Coumans
bbefc8fe7e Apply temporary stack-memory optimization, thanks to Jim Tillander
(old pull request 316 https://github.com/bulletphysics/bullet3/pull/316)
You can disable this in the build system, by adding preprocessor define 'BT_DISABLE_STACK_TEMP_MEMORY'
2017-03-13 22:27:37 -07:00
erwincoumans
11975ec60b Merge pull request #259 from AlexanderPolyakov/master
Fix for use of uninitialized variables.
2017-03-13 21:57:03 -07:00
erwincoumans
ef9afd39f7 Merge pull request #996 from iSLC/master
Adjust thread-local local static variable syntax for MinGW/GCC.
2017-03-13 21:52:06 -07:00
erwincoumans
cbd046e87f Merge pull request #1012 from DaveeFTW/winarm-fix
fix using SSE on non x86 targets
2017-03-13 21:50:55 -07:00
erwincoumans
41d7ee4f89 Merge pull request #1009 from cprogrammer1994/fix-compile-warnings
Fix some compiler warnings
2017-03-13 21:49:28 -07:00
David Morgan
6e35a9ee64 fix using SSE on non x86 targets 2017-03-13 19:14:10 +00:00
Erwin Coumans
bdaadf57e0 apply _clang-format to Bullet/src/LinearMath/btScalar.h, disable around preprocessor defines
(issue with clang-format lacking preprocessor indentation support, see
https://bugs.llvm.org//show_bug.cgi?id=17362
and possibly apply this patch:
https://github.com/mkurdej/clang/tree/indent-pp-directives
)
2017-03-13 11:17:42 -07:00
Szabolcs Dombi
839086ac84 fix type conversion warnings 2017-03-13 18:30:44 +01:00
Szabolcs Dombi
3052477c67 cast vertex data (btScalar) to float 2017-03-13 18:27:57 +01:00
Szabolcs Dombi
41c5a2e972 sinf -> btSin and acosf -> btAcos 2017-03-13 18:26:36 +01:00
Szabolcs Dombi
953bc0d3e7 float to btScalar 2017-03-13 18:22:36 +01:00
erwincoumans
644e510c83 Fix Issue 997 2017-03-08 12:38:27 -08:00
Sandu Liviu Catalin
bbb7e3c5f5 Adjust thread-local local static variable syntax for MinGW/GCC. 2017-03-08 00:46:39 +02:00
erwincoumans
18fb738f80 Merge pull request #992 from taylor001/dev
Fix warning when compiling with -Dundef on MinGW
2017-03-07 07:37:39 -08:00
Daniele Bartolini
af284122a3 Fix warning when compiling with -Dundef on MinGW 2017-03-06 19:27:21 +01:00
Pavel
13669a4331 remove unnecessary using namespace std from b3CommandLineArgs.h 2017-03-04 03:52:50 -08:00
Erwin Coumans
dcc4c0bda8 fix uninitialized value in new btMatrix3x3::diagonalize 2017-03-03 16:02:12 -08:00
Erwin Coumans
0131754173 Add 'extractRotation' based on "A robust method to extract the rotational part of deformations"
///See http://dl.acm.org/citation.cfm?doid=2994258.2994269
Rewrite 'diagonalize' to use 'extractRotation', should fix Issue 846
2017-02-25 16:57:18 -08:00
yunfeibai
e12981fd45 Enable logging a specified list of objects for generic robot logging. 2017-02-20 12:17:12 -08:00
erwincoumans
46c7974927 Merge pull request #947 from erwincoumans/master
[pybullet] add some out-of-bounds checks, reduce run-time memory allocations
2017-02-07 12:07:40 -08:00
erwincoumans
88fdffba04 pybullet/shared memory API: add some more check for out-of-bounds indices when setting up a command.
avoid many run-time memory allocations in btCompoundCompoundCollisionAlgorithm
2017-02-04 12:32:42 -08:00
erwincoumans
e1cfe94ac9 no special case for <=1 minimumSolverBatchSize 2017-02-01 11:20:36 -08:00
erwincoumans
2fa3e267fc Merge pull request #940 from erwincoumans/master
fix sphere-triangle for degenerate triangles (zero area/normal), fix 'safeNormalize' (probably should remove it)
2017-01-30 21:26:08 -08:00
erwincoumans
72dd8285e8 fix 'safeNormalize' (probably should remove it)
Fix for Issue 953: cull degenerate triangles
https://github.com/bulletphysics/bullet3/issues/935
Thanks to Oleg Klimov for the report and reproduction case.
2017-01-30 18:12:09 -08:00
Kibeom Kim
761275df28 Add and use BT_ID_* math functions for idScalar. 2017-01-26 11:40:09 -08:00
Erwin Coumans
980908bdee add optimized version of sphere-capsule and capsule-sphere, re-using the capsule-capsule code with zero height for a sphere. 2017-01-25 10:45:55 -08:00
erwincoumans
bc997c1fd0 Update btMultiBody.h 2017-01-23 22:53:11 -08:00
Erwin Coumans
1b2db1ff09 more btCapsuleShape fixes
use hello_mjcf.xml for MJCF importer
2017-01-23 22:22:02 -08:00
Erwin Coumans
a25a5e523c drop non-uniform local scaling support for btCapsuleShape 2017-01-23 21:10:32 -08:00
Erwin Coumans
0060c42ae8 more fixes for btCapsuleShape: its entire radius is collision margin, don't let the user override it (similar to a btSphereShape) 2017-01-23 19:38:14 -08:00
Erwin Coumans
d465e1eea5 add capsule support in urdf parser (non-standard extension), capsule.urdf
fix btCapsuleShape (X,Y,Z) margin issue
fix uninitialized variables in TinyRenderer: m_hasLightDistance, m_hasLightAmbientCoeff, m_hasLightDiffuseCoeff, m_hasLightSpecularCoeff
pybullet/shared memory API 'getClosestPoints' / b3InitClosestDistanceQuery, only report contacts equal/smaller distance than given
2017-01-23 16:45:18 -08:00
Erwin Coumans
cf9f022d39 [pybullet] getNumConstraints, getConstraintInfo APIs.
[pybullet] updated pybullet_quickstartguide.pdf
Fail clearly (assert, return BT_INFINITY) if link index is out of range for btMultiBody methods localPosToWorld,worldPosToLocal,localDirToWorld,worldDirToLocal.
pybullet getConstraintInfo
Fix warnings due to Mac OSX 10.12 upgrade (with backward compatibility)
2017-01-22 19:08:31 -08:00
Erwin Coumans
d81d62a70b Prepare for Bullet 2.86 release, update version to 2.86 (release will be tagged soon)
protect some C-API methods against negative dof indices
add triangle mesh import from MJCF files
update to recent pybullet quickstart guide pdf
2017-01-20 11:48:33 -08:00
Erwin Coumans
93471a1c31 cmake Win32 fixes
fixed some more warnings
added alignment macros to some classes
btPersistentManifold from 128 to 16 bytes aligned
prepare command to select collision filter mode (SIM_PARAM_UPDATE_COLLISION_FILTER_MODE)
2017-01-16 13:05:26 -08:00
Erwin Coumans
8e9181f85c [MJCF import] add custom broadphase collision filter, for MJCF/MuJoCo compatibility
[MJCF import] improve MuJoCo importer, support collision filters
fixed a few more warnings
2017-01-16 08:23:49 -08:00
Erwin Coumans
c0c4c8ba3f fix many warnings
remove btMultiSapBroadphase.*
make collisionFilterGroup/collisionFilterMark int (instead of short int)
2017-01-15 22:26:11 -08:00
erwincoumans
e738d1ffde fix for iOS, add #include <TargetConditionals.h> 2017-01-13 12:06:13 -08:00
Erwin Coumans
9aa5a839d5 add pybullet.changeConstraint / b3InitChangeUserConstraintCommand/ b3InitChangeUserConstraintSetPivotInB /b3InitChangeUserConstraintSetFrameInB command, to change an existing user constraint.
add constraint.py example.
allow pybullet.createConstraint to create user constraint without a child body ('fixed' to the world)
2017-01-12 10:30:46 -08:00
Erwin Coumans
5e6cfd70b5 iOS platform and Android don't have __thread local storage, so avoid multi-threaded profiler on those (only on _WIN32, __linux__ and __APPLE__ and not TARGET_OS_IPHONE
Add a Sleep(0) for Windows to yield threads (and not Sleep(1))
2017-01-08 12:49:04 -08:00
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
erwincoumans
e4e12828ca Merge pull request #790 from mwoehlke-kitware/fix-dl-link-errors
Fix clew.c link errors
2016-09-21 08:11:00 -07:00
erwincoumans
5a6db80d01 Merge pull request #788 from mwoehlke-kitware/fix-missing-virtual-dtor
Add "missing" virtual dtor
2016-09-21 08:09:14 -07:00
erwin coumans
0a628f06cc decrease some gjk/epa tolerance to improve collision detection using very small collision margins (0.001/1mm)
tweak pr2 gripper.
2016-09-20 12:37:13 -07:00
erwin coumans
db3122233f remove that odd triangle in the origin of samurai castle (VR)
add rolling/spinning friction to cube, remove it from plane/samurai.urdf
URDF2Bullet: support joint limits for revolute and prismatic, only if defined (if upper < lower, disable limit)
add some profiling markers to improve performance
2016-09-19 07:02:43 -07:00
Matthew Woehlke
7e1d72dfe4 Remove useless const qualifiers from returns
Remove const qualifiers applied to POD return values, as these are
meaningless and ignored by the compiler and are therefore potentially
misleading. (They also trip -Wignored-qualifiers.)
2016-09-16 11:01:03 -04:00
Erwin Coumans
567b003654 separate spinning and rolling friction coefficients, exposed in URDF as spinning_friction / m_rolling_friction
improvements in VR demo, add grasper etc.
2016-09-16 00:57:00 +01:00
Erwin Coumans
1d88cf71e4 separate spinning friction (torsional friction around contact normal) from
rolling friction (orthogonal to contact normal)
2016-09-16 00:04:33 +01:00
Matthew Woehlke
ba3a1dcc98 Fix clew.c link errors
Add missing link to CMAKE_DL_LIBS to resolve link errors from clew.c
using dlopen and friends but failing to link to libdl.

Fixes #787.
2016-09-15 12:58:31 -04:00
Matthew Woehlke
ef943bdcf0 Add "missing" virtual dtor
Make the dtor of b3DynamicBvhBroadphase virtual, to match that the type
has other virtual methods. This silences a -Wvirtual-dtor warning.
2016-09-15 12:17:23 -04:00
erwincoumans
e5a8eb2425 rolling friction -> combine using rolling*normal friction, add for both objects.
rolling friction -> only along the normal, until we have separate rolling friction coefficients on normal and non-normal directions
Don't teleport with grasping controller (VR)
Tune VR grasping a bit.
2016-09-12 19:10:20 +01:00
Erwin Coumans
82661d98cd init ERP for second btMultiBodyJointMotor,
comment-out debug printf in Kuka IK example
2016-09-11 05:54:47 +01:00
erwin coumans
3c706306cd add experimental pr2-gripper support in VR physics server
add setErp to btMultiBodyJointMotor
2016-09-09 14:30:37 -07:00
erwin coumans
4ab02a07e5 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-09-08 15:22:41 -07:00
erwin coumans
32eccdff61 Create project file for BussIK inverse kinematics library (premake, cmake)
URDF/SDF: add a flag to force concave mesh collisiofor static objects. <collision concave="yes" name="pod_collision">
VR: support teleporting using buttong, allow multiple controllers to be used, fast wireframe rendering,
Turn off warnings about deprecated C routine in btScalar.h/b3Scalar.h
Add a dummy return to stop a warning
Expose defaultContactERP in shared memory api/pybullet.
First start to expose IK in shared memory api/pybullet (not working yet)
2016-09-08 15:15:58 -07:00
erwincoumans
d5ec5ca9a0 Update IDConfig.hpp 2016-09-06 13:07:06 -07:00
Erwin Coumans
ecd814c9c5 export contact friction/damping through URDF and API
convert from contact friction/damping to cfm/erp
btCollisionObject::setContactFrictionAndDamping
2016-09-02 16:40:56 -07:00
Erwin Coumans
e98fca1e5e implement pybullet.getContactPointData(), two optional object unique ids as filter
returns a pylist of contact points. Each point has the following data:

	0     int m_contactFlags;//unused for now
         1     int m_bodyUniqueIdA;
         2     int m_bodyUniqueIdB;
         3     int m_linkIndexA;
         4     int m_linkIndexB;
         5-6-7     double m_positionOnAInWS[3];//contact point location on object A, in world space coordinates
         8-9-10     double m_positionOnBInWS[3];//contact point location on object A, in world space coordinates
         11-12-13     double m_contactNormalOnBInWS[3];//the separating contact normal, pointing from object B towards object A
         14     double m_contactDistance;//negative number is penetration, positive is distance.

         15    double m_normalForce;
2016-09-01 18:28:39 -07:00
erwincoumans
a370c3bbac Merge pull request #765 from YunfeiBai/master
Torsional and rolling friction for btMultiBody
2016-09-01 14:57:46 -07:00
erwincoumans
85fd7f560c add first draft of contact point query in shared memory API
b3SharedMemoryCommandHandle b3InitRequestContactPointInformation(b3PhysicsClientHandle physClient);
void b3SetContactFilterBodyA(b3SharedMemoryCommandHandle commandHandle, int bodyUniqueIdA);
void b3SetContactFilterBodyB(b3SharedMemoryCommandHandle commandHandle, int bodyUniqueIdB);
void b3GetContactPointInformation(b3PhysicsClientHandle physClient, struct b3ContactInformation* contactPointData);
Implemented for PhysicsClientSharedMemory, not for PhysicsDirect yet.
Add btCollisionObject::setUserIndex2
2016-09-01 13:30:07 -07:00
yunfeibai
9c124b5896 Rolling friction demo for sphere and torsional friction demo for two point contact. 2016-08-30 17:50:37 -07:00
yunfeibai
d784c61b61 Add rolling friction, set rolling friction coefficient from urdf, and set up two point contact experiment. 2016-08-30 11:19:23 -07:00
erwin coumans
4094b9f0df Disable 'm_robotSim.setNumSimulationSubSteps' because it is not needed at the moment
Fix issue in contact/friction between btMultibody and btRigidBody (external force/torque of btRigidBody was not taken into account during contact/friction setup)
Allow 0.1 mm slop in contact, to avoid loosing contact. Todo: allow contacts with positive distance in multibody solver.
2016-08-27 13:44:18 -07:00
Michael Mc Donnell
4636efae2b [Bullet3OpenCL] Fix check for null-terminated string
The code essentially dead because it was checking the pointer to an array for null. The check will alway return true. Instead the code was meant to check if the string had anything in it after the call to clGetDeviceInfo.
2016-08-27 08:13:42 -07:00
Michael Mc Donnell
d5dcb34188 [Bullet3OpenCL] Fix wrong parantheses around b3Fabs
The absolute value of m_appliedImpulse was supposed to be compared to the breakingThreshold. Instead a boolean was created from the comparison, and the absolute value of that was taken (which makes no sense).
2016-08-27 08:13:42 -07:00
erwincoumans
c741b17da8 Merge pull request #758 from YunfeiBai/master
Expose slider constraint in RobotSimAPI.
2016-08-26 12:26:08 -07:00
erwincoumans
79be5800cb Merge pull request #757 from erwincoumans/master
fix in structure alignment of btMultiBodyLinkDoubleData and btMultiBo…
2016-08-26 12:08:29 -07:00