Commit Graph
100 Commits
Author SHA1 Message Date
Erwin Coumans ff43cea263 Fix some deactivation issues with btMultiBodyDynamicsWorld, should also improve performance for PyBullet with larger worlds
(even when sleeping is disabled, islands are split)
2018-08-26 16:14:36 -07:00
erwincoumans 4eb0598e8e Merge pull request #1838 from gkjohnson/fix-urdf-xml-version
Change URDF xml version from "0.0" to "1.0"
2018-08-23 23:08:48 -07:00
erwincoumans 78946c8ca7 Merge pull request #1842 from crewmatt/crewmatt-ikoriginalpositions
Allow current positions for Calculate IK.
2018-08-23 23:07:48 -07:00
erwincoumans aace31c1fa Merge pull request #1843 from rhaschke/master
preserve constness to avoid compiler warnings
2018-08-23 23:06:54 -07:00
erwincoumans d44571a4b3 Merge pull request #1832 from erwincoumans/master
fix parameter mismatch in SerialChains.cpp
2018-08-10 02:03:12 +00:00
erwincoumans 2c425f72fe Merge pull request #1831 from erwincoumans/master
bump up pybullet version, revert linear slop
2018-08-09 23:56:29 +00:00
erwincoumans 1410c84824 Merge pull request #1830 from erwincoumans/master
add missing SerialChains.cpp file to premake4.lua
2018-08-09 23:31:03 +00:00
Erwin Coumans 07b21ca4a2 add missing SerialChains.cpp file to premake4.lua 2018-08-09 16:30:20 -07:00
erwincoumans ec5cc04680 Merge pull request #1818 from jslee02/multibody_mlcp_solver_v2
Add MLCP constraint solver for multibody
2018-08-09 22:54:52 +00:00
erwincoumans 8ca9e66294 Merge pull request #1829 from erwincoumans/master
data: add license files (mostly copied from the URDF files)
2018-08-09 22:51:46 +00:00
Erwin Coumans d3d0d948cc data: add license files (mostly copied from the URDF files) 2018-08-09 15:50:39 -07:00
erwincoumans 6fe1b000e5 Merge pull request #1820 from erwincoumans/master
fix previous revert of btMultiBody.cpp
2018-08-03 18:05:59 -07:00
erwincoumans 961d8adad1 Merge pull request #1806 from erwincoumans/master
prepare build system(s) for collisionFilterPlugin
2018-08-03 17:43:13 -07:00
erwincoumans 7d38cab1aa Merge pull request #1811 from RanTig/SimulationSteppedNotification
Adds a simulation stepped notification
2018-08-02 20:34:22 +02:00
erwincoumans 8b27a7311c Merge pull request #1801 from RanTig/TickPlugins
Notify plugins on certain events (e.g. body added).
2018-07-27 14:58:55 +02:00
erwincoumans fa41e2945c Merge pull request #1804 from erwincoumans/master
fix memory leak reported in Issue #1800
2018-07-27 14:50:45 +02:00
Erwin Coumans a696bd6a46 fix memory leak reported in Issue #1800
avoid access to array elements outside of range
2018-07-25 19:59:29 +02:00
erwincoumans 0c66696e19 Merge pull request #1803 from mbeards/id_macro_collision
Renamed error_message and warning_message macros.
2018-07-24 22:54:03 +02:00
erwincoumans 27b3241ff1 Merge pull request #1802 from erwincoumans/master
use the maximum square residual instead of sum
2018-07-24 20:46:01 +02:00
Erwin Coumans f0c8bbf1a1 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-07-24 15:21:12 +02:00
Erwin Coumans f91e5c573c use the maximum square residual instead of sum 2018-07-24 15:20:34 +02:00
erwincoumans 0e1dce41ea Merge pull request #1799 from erwincoumans/master
in solver,  body1 -> bodyA and body2 -> bodyB
2018-07-22 20:14:45 +02:00
erwincoumans defd961f60 Merge pull request #1798 from erwincoumans/master
Change constraint solver threshold-based termination condition on res…
2018-07-22 12:28:32 +02:00
Erwin Coumans b5495e789d Change constraint solver threshold-based termination condition on residual of velocity threshold, not on residual of impulse threshold.
This avoids issues with systems with large mass ratios.

Test: add this to BasicDemo/BasicExample.cpp in initPhysics

	m_dynamicsWorld->getSolverInfo().m_numIterations = 1000;
	m_dynamicsWorld->getSolverInfo().m_leastSquaresResidualThreshold = 1e-4;
2018-07-22 11:30:16 +02:00
erwincoumans c254768d1a Merge pull request #1793 from jslee02/fix_build_clang6
Fix build errors with Clang 6 (also resolve #1510)
2018-07-19 09:20:42 +02:00
erwincoumans a8d81eb155 Merge pull request #1787 from jslee02/multibody_cleanup
Minor code optimization in multibody forward dynamics
2018-07-18 10:19:02 +02:00
erwincoumans 3d5c921495 Merge pull request #1782 from RanTig/userdata
Changes UserData to use global identifiers and makes linkIndex optional.
2018-07-09 11:36:51 +02:00
erwincoumans d6aae09290 Merge pull request #1780 from erwincoumans/master
PyBullet: preliminary DART and MuJoCo backend code (mostly empty placeholders)
2018-07-09 11:25:33 +02:00
Erwin Coumans 2ce1e65b53 PyBullet: tweak in TCP server for VR - ROS bridge 2018-07-03 16:30:54 -07:00
Erwin Coumans c0183d4834 Merge remote-tracking branch 'bp/master' 2018-07-03 16:28:45 -07:00
erwincoumans 23f235e449 PyBullet: add example to enable another physics engine backend (DART, MuJoCo) 2018-07-01 14:49:34 -07:00
erwincoumans 98fc4b1510 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-07-01 14:42:48 -07:00
erwincoumans 0d8564db22 PyBullet: added preliminary DART and MuJoCo backend files, MuJoCo can loadMJCF, stepSimulation and getBasePositionAndOrientation, DART is empty.
PyBullet: add 2d biped example.,
2018-07-01 14:42:32 -07:00
Erwin Coumans bfc85ff1fd PyBullet: TCP connection, optimized getVREvents to allow faster Windows -> Linux Vive tracking state communication. 2018-06-27 23:43:42 -07:00
erwincoumans 04556502f0 Merge pull request #1778 from erwincoumans/master
fix hidden API
2018-06-27 09:21:11 -07:00
erwincoumans c531234f3a Merge pull request #1774 from erwincoumans/master
PyBullet: allow to replace existing debug lines in addUserDebugLine t…
2018-06-26 10:40:40 -07:00
erwincoumans e023d94b32 Merge pull request #1775 from bingjeff/marios_fix_global_variables
remove some debug globals from third_party/bullet
2018-06-26 08:58:27 -07:00
erwincoumans 1b69e22df6 Merge pull request #1776 from YunfeiBai/master
Remove the pdController when maxForce = 0
2018-06-26 08:54:40 -07:00
erwincoumans 49b0ec08e1 PyBullet: allow to replace existing debug lines in addUserDebugLine through the replaceItemUniqueId argument
See batchRayCast.py for example usage
2018-06-22 16:47:20 -07:00
erwincoumans 6b2cae1b1d Merge pull request #1769 from RanTig/parallel_raycast_fix
Several fixes for the parallel raycasts
2018-06-22 15:49:56 -07:00
erwincoumans 09751a0b6b Merge pull request #1770 from erwincoumans/master
PyBullet urdfEditor use in example,  PyBullet.setPhysicsEngineParameter: only update solverResidualThreshold if needed
2018-06-22 11:06:37 -07:00
erwincoumans 784f0fdc04 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-06-22 09:28:14 -07:00
erwincoumans 55e185fe39 PyBullet loadURDF in useMaximalCoordinated=True (btRigidBody), support lower/upper limits for revolute joints. 2018-06-22 09:28:07 -07:00
erwincoumans 8c851a70c7 Merge pull request #1766 from erwincoumans/master
lazy creation of batch scheduler, it causes issues with the physics.
2018-06-16 14:02:11 -07:00
erwincoumans 42c9d9aa3c lazy creation of batch scheduler, it causes issues with the physics. 2018-06-16 13:59:03 -07:00
erwincoumans 046d95b7e6 Merge pull request #1765 from erwincoumans/master
PyBullet: deal with backward compatibility of b3RaycastBatchAddRay
2018-06-16 13:09:17 -07:00
erwincoumans c55720fb41 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-06-16 12:28:38 -07:00
erwincoumans 7924d51665 PyBullet: deal with backward compatibility of b3RaycastBatchAddRay:
use b3RaycastBatchAddRays API to enable MAX_RAY_INTERSECTION_BATCH_SIZE_STREAMING num rays.
Old API (b3RaycastBatchAddRay) sticks to 256 rays, MAX_RAY_INTERSECTION_BATCH_SIZE.
2018-06-16 12:28:21 -07:00
erwincoumans ec37495142 Merge pull request #1761 from erwincoumans/master
bump up pybullet version
2018-06-16 10:47:28 -07:00
Erwin Coumans b94df12081 add missing pthread link in App_HelloBulletRobotics 2018-06-16 10:20:43 -07:00
erwincoumans 04d03d10be Fix memory leak due to batchRayCast never deleting the btTaskScheduler.
(and issue with TaskScheduler/btTaskScheduler.cpp, add JobQueue::exit, call it first, since it uses the m_threadSupport which was deleted before the destrucor was called.
Use a hashmap to store user timers, to avoid allocating many identical strings.
2018-06-16 09:37:53 -07:00
erwincoumans cb1fce7899 revert exposing getSharedMemoryStreamBuffer / adding to command structure
use 16k rays by default
add uploadRaysToSharedMemory method
2018-06-16 08:14:00 -07:00
erwincoumans 23f9250e04 Merge remote-tracking branch 'bp/master' 2018-06-16 06:58:10 -07:00
erwincoumans d660042d76 Merge pull request #1763 from YunfeiBai/master
Add the pdControlPlugin to the joint control C API, and add the PD co…
2018-06-16 06:57:50 -07:00
erwincoumans 75ec8f3fd9 PyBullet: add batchRayCast.py example 2018-06-16 06:20:15 -07:00
erwincoumans f517b03534 Expose pushProfileTimer / pop ProfileTimer in PhysicsClient API to benchmark Python parts of PyBullet.
reduce 'm_cooldownTime' from 1000 microseconds to 100 microseconds (overhead in raycast is too large)
If needed, we can expose this cooldown time.
Replace malloc by btAlignedObjectArray (going through Bullet's memory allocator)
2018-06-16 06:19:49 -07:00
erwincoumans bb8cbcdaae Merge remote-tracking branch 'bp/master' 2018-06-16 06:06:18 -07:00
erwincoumans 5b3e43d4d8 Merge pull request #1760 from RanTig/ParallelRaycasts
Adds multithreading support for batch ray casts.
2018-06-16 05:54:34 -07:00
erwincoumans c9bbd80dc0 Merge pull request #1762 from alexis-jacq/patch-2
isAlive method forcing done=False for halfcheetah
2018-06-16 05:32:42 -07:00
Erwin Coumans fbbd675ed6 expose PyBullet API to wakeup/put objects to sleep, enable/disable deactivation
fix wakeup -> reset deactivation clock
2018-06-15 21:26:26 -07:00
erwincoumans 997211650e Merge pull request #1757 from erwincoumans/master
PyBullet.loadURDF, expose flags=URDF_INITIALIZE_SAT_FEATURES
2018-06-14 02:35:09 +00:00
erwincoumans 25c5e87dc2 PyBullet.loadURDF, expose flags=URDF_INITIALIZE_SAT_FEATURES 2018-06-13 15:35:56 -07:00
erwincoumans 946a59f2fe Merge pull request #1756 from bulletphysics/erwincoumans-patch-4
Update btConvexConvexAlgorithm.cpp
2018-06-13 15:30:58 +00:00
erwincoumans 5f203df65a Update btConvexConvexAlgorithm.cpp 2018-06-13 07:47:14 -07:00
erwincoumans b75c63f2a2 Merge pull request #1755 from erwincoumans/master
path -> const
2018-06-13 04:40:38 +00:00
erwincoumans ce9f29e416 Merge pull request #1752 from bulletphysics/erwincoumans-patch-2
Update b3RobotSimulatorClientAPI_NoDirect.h
2018-06-13 04:18:26 +00:00
erwincoumans 4f0959a136 Update b3RobotSimulatorClientAPI_NoDirect.h 2018-06-12 21:17:43 -07:00
erwincoumans 6376197e5e Merge pull request #1749 from erwincoumans/master
remove getLinkState from API, it automatically calculated forwardKine…
2018-06-13 03:38:36 +00:00
erwincoumans ce47fcc7f2 Merge pull request #1751 from bulletphysics/erwincoumans-patch-1
Update btOverlappingPairCache.h
2018-06-13 02:50:05 +00:00
erwincoumans 437d66f9b4 Update btOverlappingPairCache.h
processAllOverlappingPairs : don't call own method, call the default one without dispatchInfo. Thanks James Dolan, fixes Issue #1750
2018-06-12 19:04:31 -07:00
erwincoumans 08d84d6ce3 fix getLinkState usage 2018-06-12 17:00:16 -07:00
erwincoumans 4d6741f5cd PyBullet: expose STATE_LOGGING_ALL_COMMANDS and STATE_REPLAY_ALL_COMMANDS
See examples/pybullet/examples/commandLogAndPlayback.py for an example.
2018-06-12 16:56:45 -07:00
erwincoumans 459d07a302 add example for enableSAT, using separating axis test (instead of GJK) for contact between polyhedral convex hull shapes (and convex hull vs triangle in a concave triangle mesh) 2018-06-12 16:10:49 -07:00
erwincoumans 97c6937388 Simplify GJK. Still needs double precision for large differences of feature scales.
Extract faces directly from btConvexHullComputer (in initializePolyhedralFeatures), instead of reconstructing them, thanks to Josh Klint in #1654
PyBullet: use initializePolyhedralFeatures for convex hulls and boxes (to allow SAT)
PyBullet: expose setPhysicsEngineParameter(enableSAT=0 or 1) to enable Separating Axis Test based collision detection for convex vs convex/box and convex versus concave triangles (in a triangle mesh).
2018-06-12 16:08:46 -07:00
erwincoumans a342af0382 remove getLinkState from API, it automatically calculated forwardKinematics and propagates velocities, which is very expensive. 2018-06-11 23:49:34 -07:00
erwincoumans 9f79011582 Merge pull request #1748 from erwincoumans/master
different way of sorting pairs,  exposed a few more methods in the C++ b3RobotSimulatorClientAPI
2018-06-12 01:00:04 +00:00
erwincoumans 62485abafe PyBullet: disable deterministic pairs by default
PyBullet: Only set static when sleeping is enables (todo: figure out issue with determinism)
2018-06-11 17:32:44 -07:00
erwincoumans fc61a3531e Merge remote-tracking branch 'bp/master' 2018-06-11 08:35:14 -07:00
erwincoumans 6fb3cf7a43 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-06-11 08:34:37 -07:00
erwincoumans cb0e98c0a9 Merge pull request #1747 from erwincoumans/master
remove ANYmal meshes
2018-06-11 14:47:40 +00:00
erwincoumans 6705d2d649 Merge pull request #1743 from erwincoumans/master
enable more unit tests in PyBullet, add BulletRobotics for premake build.
2018-06-11 02:06:46 +00:00
erwincoumans 3eebcd40ca exposed a few more methods in the C++ b3RobotSimulatorClientAPI (_NoDirect base class) 2018-06-09 19:40:12 -07:00
erwincoumans 7ac3e263ab add saveStateToMemory/restoreStateFromMemory/setAdditionalSearchPath/getAPIVersion to Bullet Robotics API. 2018-06-09 13:54:22 -07:00
erwincoumans 0cec85626f enable more unit tests in PyBullet.
return Py_None if no user data found, to pass the test.
enable m_deterministicOverlappingPairs by default.
if m_deterministicOverlappingPairs, sort the collision pairs.
2018-06-09 12:19:29 -07:00
erwincoumans 046a86cd84 add premake4.lua build for BulletRobotics target, C++ API, similar to PyBullet. Use BulletRobotics target for App_HelloBulletRobotics (without GUI) and App_RobotSimulator 2018-06-08 19:14:03 -07:00
erwincoumans 8a70afa4f6 Merge pull request #1736 from erwincoumans/master
remove some warnings
2018-06-06 19:22:19 -07:00
erwincoumans c60cc4897c Merge pull request #1735 from erwincoumans/master
fix another parameter name in header, in enableJointForceTorqueSensor
2018-06-05 19:59:38 -07:00
erwincoumans cb6d76d6b5 fix another parameter name in header, in enableJointForceTorqueSensor 2018-06-05 19:59:00 -07:00
erwincoumans bcf466ee4e Merge pull request #1734 from erwincoumans/master
fix parameter name in header, computeForwardKinematics
2018-06-05 19:57:52 -07:00
erwincoumans dff04c7f59 fix parameter name in header, computeForwardKinematics 2018-06-05 19:57:21 -07:00
erwincoumans 88008b400a Merge pull request #1733 from erwincoumans/master
use new API b3CreateInProcessPhysicsServerFromExistingExampleBrowserA…
2018-06-05 19:54:37 -07:00
erwincoumans 72d3f45b05 use new API b3CreateInProcessPhysicsServerFromExistingExampleBrowserAndConnect3 (not 2) 2018-06-05 19:54:08 -07:00
erwincoumans 4615774150 Merge pull request #1732 from erwincoumans/master
people are actually using this internal API, add a new one and keep o…
2018-06-05 19:45:04 -07:00
erwincoumans 4083088a3a people are actually using this internal API, add a new one and keep old one backward compatible
b3CreateInProcessPhysicsServerFromExistingExampleBrowserAndConnect3 is the new one,
b3CreateInProcessPhysicsServerFromExistingExampleBrowserAndConnect2 old
2018-06-05 19:44:33 -07:00
erwincoumans 5ede227e94 Update robot_bases.py
remove print
2018-06-05 19:33:28 -07:00
erwincoumans e9b7ab1c59 Merge pull request #1731 from erwincoumans/master
PyBullet / BulletRobotics: prepare for pdControlPlugin and collisionFilterPlugin, and allow to pick shared memory key in SHARED_MEMORY_SERVER
2018-06-05 18:01:12 -07:00
erwincoumans b6f5cb4c34 enable pdControlPlugin by default (requires pdControlPlugin.cpp and b3RobotSimulatorClientAPI_NoDirect.cpp)
add pdControl.py example, make pdControlPlugin functional
reduce memory usage
fix examples/pybullet/gym/pybullet_data/random_urdfs/948/948.urdf, fixes issue #1704
2018-06-05 15:59:01 -07:00
erwincoumans 49eb83c24e Avoid static multibody to activate/wake up sleeping objects.
Couldn't reproduce an issue related to this.
2018-06-05 12:20:42 -07:00
erwincoumans fa648a028e fix a few problems introduced in #1730
https://github.com/bulletphysics/bullet3/pull/1730
2018-06-05 09:16:00 -07:00
erwincoumans d7cbe8dd26 Merge remote-tracking branch 'bp/master' 2018-06-05 08:15:11 -07:00