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.
erwincoumans
2018-06-16 12:28:21 -07:00
9326fff75a
PyBullet: bump up version to 2.0.8
Erwin Coumans
2018-06-16 11:02:04 -07:00
b94df12081
add missing pthread link in App_HelloBulletRobotics
Erwin Coumans
2018-06-16 10:20:43 -07:00
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.
erwincoumans
2018-06-16 09:37:53 -07:00
cb1fce7899
revert exposing getSharedMemoryStreamBuffer / adding to command structure use 16k rays by default add uploadRaysToSharedMemory method
erwincoumans
2018-06-16 08:14:00 -07:00
75ec8f3fd9
PyBullet: add batchRayCast.py example
erwincoumans
2018-06-16 06:20:15 -07:00
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)
erwincoumans
2018-06-16 06:19:49 -07:00
6adea4964f
forgot one "isAlive" to change
Alexis David Jacq
2018-06-16 14:00:05 +02:00
50b5edd7b5
isDone instead of isAlive
Alexis David Jacq
2018-06-16 13:53:05 +02:00
fbbd675ed6
expose PyBullet API to wakeup/put objects to sleep, enable/disable deactivation fix wakeup -> reset deactivation clock
Erwin Coumans
2018-06-15 21:26:26 -07:00
1c0de3c4cb
Add the pdControlPlugin to the joint control C API, and add the PD control mode (also available in pybullet). Modify the pdControl pybullet example to use the PD control mode with setJointMotorControl API.
YunfeiBai
2018-06-15 17:59:26 -07:00
0b1dca3d9c
Updates the documentation for the pybullet function rayTestBatch to include the numThreads parameter.
Tigran Gasparian
2018-06-15 17:46:12 +02:00
a57c480f28
Update gym_locomotion_envs.py
Alexis David Jacq
2018-06-15 17:38:35 +02:00
976fea4eca
fix saveRestoreState.py example
Erwin Coumans
2018-06-15 08:31:39 -07:00
d244cf6061
Changes the default number of rays per thread from 32 to 16, when the user lets Bullet decide.
Tigran Gasparian
2018-06-15 17:13:10 +02:00
08409cae9f
Adds multithreading support for batch ray casts.
Tigran Gasparian
2018-06-15 16:47:04 +02:00
0080cf7ed1
bump up pybullet version to 2.0.7
Erwin Coumans
2018-06-13 22:36:12 -07:00
4d6741f5cd
PyBullet: expose STATE_LOGGING_ALL_COMMANDS and STATE_REPLAY_ALL_COMMANDS See examples/pybullet/examples/commandLogAndPlayback.py for an example.
erwincoumans
2018-06-12 16:56:45 -07:00
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)
erwincoumans
2018-06-12 16:10:49 -07:00
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).
erwincoumans
2018-06-12 16:08:46 -07:00
a342af0382
remove getLinkState from API, it automatically calculated forwardKinematics and propagates velocities, which is very expensive.
erwincoumans
2018-06-11 23:49:34 -07:00
62485abafe
PyBullet: disable deterministic pairs by default PyBullet: Only set static when sleeping is enables (todo: figure out issue with determinism)
erwincoumans
2018-06-11 17:32:44 -07:00
ad0c7ecaa2
different way of sorting pairs (using indexing), don't 'clear' all pairs.
Erwin Coumans
2018-06-11 14:42:26 -07:00
38469deec7
getNumLinks -> getNumDofs, to make sure fixed objects don't transfer activation state
Erwin Coumans
2018-06-11 11:41:33 -07:00
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.
erwincoumans
2018-06-09 12:19:29 -07:00
046a86cd84
add premake4.lua build for BulletRobotics target, C++ API, similar to PyBullet. Use BulletRobotics target for App_HelloBulletRobotics (without GUI) and App_RobotSimulator
erwincoumans
2018-06-08 19:14:03 -07:00
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
erwincoumans
2018-06-05 19:44:33 -07:00
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
erwincoumans
2018-06-05 15:59:01 -07:00
49eb83c24e
Avoid static multibody to activate/wake up sleeping objects. Couldn't reproduce an issue related to this.
erwincoumans
2018-06-05 12:20:42 -07:00
7bd84740d7
PyBullet / BulletRobotics: prepare for pdControlPlugin and collisionFilterPlugin Split examples/SharedMemory/b3RobotSimulatorClientAPI_NoGUI.* and move to examples/SharedMemory/b3RobotSimulatorClientAPI_NoGUI.cpp and examples/SharedMemory/b3RobotSimulatorClientAPI_NoDirect.cpp
Erwin Coumans
2018-06-05 11:41:41 +10:00
e4cd88e24f
PyBullet: allow to choose the shared memory key when starting SHARED_MEMORY_SERVER
Erwin Coumans
2018-06-05 11:36:54 +10:00
c49e060e81
Starts bullet server when testsuite is ran, uses pybullet_utils to manage clients.
Tigran Gasparian
2018-06-04 19:40:16 +02:00
bb72a91080
Clears the user data cache when syncUserData is called. Adds unit test for the UserData functons. Changes the char pointer in btHashString to std::string. There were problems where the object owning the string memory would deallocate the string, making the btHashString object invalid.
Tigran Gasparian
2018-06-04 15:10:48 +02:00
4997eb8da2
add new file related to PyBullet userData
erwincoumans
2018-06-02 13:52:00 -07:00
b6120e760a
PyBullet.addUserData / getUserData / removeUserData / getUserDataId / getNumUserData / getUserDataInfo See examples/pybullet/examples/userData.py how to use it. TODO: add to PyBullet Quickstart Guide. Thanks to Tigran Gasparian for the contribution!
erwincoumans
2018-06-02 13:40:08 -07:00
cb6b7a7c38
PyBullet: expose flags to createMultiBody
erwincoumans
2018-06-02 11:37:14 -07:00