Max Argus
21462d1c02
update GLIR camera
2018-08-30 13:24:25 +02:00
Max Argus
a6a8b091ca
wip
2018-08-30 13:24:25 +02:00
Max Argus
05f82e8867
egl plugin working
2018-08-30 13:24:25 +02:00
Max Argus
f80f0c76a4
added egl plugin commit
2018-08-30 13:24:25 +02:00
Max Argus
2707b7acb4
apple issue
2018-08-30 13:24:25 +02:00
Max Argus
1b95961617
fix build
2018-08-30 13:24:25 +02:00
Max Argus
9328d0bb5f
fix build
2018-08-30 13:24:25 +02:00
Max Argus
a9ba3eb8cc
fixed cmake
2018-08-30 13:24:25 +02:00
Max Argus
f0e7f266ef
switched to new glad2
2018-08-30 13:24:25 +02:00
Max Argus
5dbf2373ad
load gl with egl not glx
2018-08-30 13:24:25 +02:00
Max Argus
6e828688e7
activate EGL + add rendertest.py
2018-08-30 13:24:25 +02:00
Max Argus
5e8ee98f2e
fix OpenGL3App argument order
2018-08-30 13:24:25 +02:00
a
3d499c8a7a
pybullet: added EGL render device and window_backend option.
...
EGL review.
EGL dynamic loading, windowType to int
moved to glad2
Require GL 3.3 as GLInstancingRenderer.cpp uses glVertexAttribDivisor
glad2 update with dynamic X11 added
removed old file
build fix
fix mac/win
EGL w/o c++11, off by default
fix premake
fixup: premake fix 2
2018-08-30 13:24:25 +02:00
erwincoumans
4f7dfc2069
Add preliminary GRPC server for PyBullet and BulletRobotics.
...
Will add GRPC client and PyBullet GRPC server plugin.
Will cover most/all SharedMemoryCommand/SharedMemoryStatus messages.
Run the server, then test using the pybullet_client.py
2018-08-29 21:12:13 -07:00
Erwin Coumans
72c48870b0
after picking in a multibody demo, allow sleeping for rigid bodies
2018-08-26 18:07:28 -07:00
Erwin Coumans
186ddb81d8
fix tab/space issue in Python file
...
fix determinism issue introduced in previous commit
2018-08-26 17:17:42 -07:00
Erwin Coumans
6ab6cf0bdb
test if different broadphase maintains determinism
2018-08-26 16:49:17 -07:00
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
Erwin Coumans
3036a6d2bc
also drop 'model://' from URDF file names (like we drop package://)
2018-08-26 09:33:51 -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
Erwin Coumans
61b7591b8e
expose choice of contraint solver in PyBullet, with switchConstraintSolver example
2018-08-23 23:04:17 -07:00
mbennice
780b280181
Allow current positions for Calculate IK.
...
Allows the user to specify the current positions of joints when
calculating Inverse Kinematics.
2018-08-23 13:19:15 -07:00
Erwin Coumans
6d53f1a6d9
fix parameter mismatch in SerialChains.cpp
2018-08-09 17:15:54 -07:00
Erwin Coumans
90e08b41a5
bump up pybullet version
2018-08-09 16:53:11 -07:00
Erwin Coumans
15e831ab99
revert default linear slop, need to handle restitution separately
2018-08-09 16:49:25 -07:00
Erwin Coumans
d6cf60ab83
Merge remote-tracking branch 'bp/master'
2018-08-09 16:48:55 -07:00
Erwin Coumans
07b21ca4a2
add missing SerialChains.cpp file to premake4.lua
2018-08-09 16:30:20 -07:00
Jeongseok Lee
3627407041
Remove Lemke from SerialChains demo
2018-08-07 15:27:54 -07:00
Jeongseok Lee
48e5a3a9ed
Cleanup SerialChains demo
2018-08-07 15:18:58 -07:00
Jeongseok Lee
777ffac5c2
Fix typo in demo name: MultiDofCreateFunc --> MultiDof
2018-08-06 10:42:25 -07:00
Jeongseok Lee
e8e97d39fe
Merge remote-tracking branch 'upstream/master' into multibody_mlcp_solver_v2
2018-08-06 10:34:43 -07:00
Erwin Coumans
56e7333941
bump up pybullet version
2018-08-04 09:58:15 -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
Jeongseok Lee
89c6a83ae9
Add MLCP constraint solver for multibody
2018-08-02 22:53:30 -07:00
Tigran Gasparian
d93980f89f
Adds a simulation stepped notification
...
This notification is called when the simulation is stepped, regardless
of whether any objects have moved.
2018-08-01 17:49:58 +02:00
Erwin Coumans
08b5e6d766
add collisionFilterPlugin to pybullet plugin, also apply quat->euler fix for singular cases
2018-07-30 17:53:37 +02:00
Erwin Coumans
e75178181d
safe normalize on degenerate triangles
2018-07-30 12:21:02 +02:00
Erwin Coumans
2cab56d6ef
prepare build system(s) for collisionFilterPlugin
2018-07-27 15:48:24 +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
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
Tigran Gasparian
35a55b2056
Changes tickPlugins to reportNotifications and only calls the processNotifications function on the plugins when there are actually notifications available. tickPlugins will to into a separate PR.
2018-07-25 14:47:34 +02:00
Tigran Gasparian
f745eafb36
Changes dynamic_cast<> to c-style cast.
2018-07-24 16:04:16 +02:00
Tigran Gasparian
c59afb88c4
Notify plugins on certain events (e.g. body added).
...
This also adds a periodic tick function to plugins, giving them periodically control over the simulation thread, even when the simulation is paused.
2018-07-24 14:12:16 +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
Jeongseok Lee
8b26945f8f
Fix build errors with Clang 6 (also addresses #1510 )
2018-07-18 12:02:36 -07:00
Jeongseok Lee
8857638ded
Revert C++ code changes to make the PR small
2018-07-18 11:57:34 -07:00
Jeongseok Lee
6323309f89
Fix c++11-narrowing errors in multibody examples
2018-07-10 09:22:41 -07: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
Erwin Coumans
f8cc33f3a3
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-07-08 11:24:37 +02:00
Erwin Coumans
127b82ec1b
expose texture unique id after loading URD file, so you can restore to the original texture after changing it to a custom texture. See also getTextureUid.py example.
2018-07-08 11:23:12 +02:00
Tigran Gasparian
49684144dc
Some minor formatting fixes
2018-07-05 16:01:03 +02:00
Tigran Gasparian
8a6db042de
Removes int initializer in SharedMemoryUserDataHashKey, changes '>>' into '> >' for nexted templates.
2018-07-04 14:25:48 +02:00
Tigran Gasparian
7c7e8af717
Increases the shared memory magic number.
2018-07-04 10:22:44 +02:00
Erwin Coumans
2ce1e65b53
PyBullet: tweak in TCP server for VR - ROS bridge
2018-07-03 16:30:54 -07:00
Tigran Gasparian
9c7aa3a863
Changes UserData to use global identifiers and makes linkIndex optional.
...
This removes the need to specify the body id/link index when retrieving a user data entry.
Additionally, user data can now optionally be set to visual shapes as well.
The following public pybullet APIs have changed (backwards incompatible)
addUserData and getUserDataId
Makes linkIndex parameter optional (default value is -1)
Adds optional visualShapeIndex parameter (default value is -1)
getUserData and removeUserData
Removes required parameters bodyUniqueId and linkIndex
getNumUserData
Removes required bodyUniqueId parameter
getUserDataInfo
Removes required linkIndex parameter
Changes returned tuple from (userDataId, key) to (userDataId, key, bodyUniqueId, linkIndex, visualShapeIndex)
2018-07-03 17:45:19 +02: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
Erwin Coumans
ac59886960
fix hidden API
2018-06-27 07:39:56 -07:00
Erwin Coumans
dffff4d3b6
Merge remote-tracking branch 'bp/master'
2018-06-26 08:58:38 -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
Erwin Coumans
21b089b0d7
Merge remote-tracking branch 'bp/master'
2018-06-26 08:57:44 -07:00
YunfeiBai
812c229736
Remove the pdController when maxForce = 0
2018-06-24 17:06:16 -07:00
Jeffrey Bingham
f2afb4af35
remove some debug globals from third_party/bullet
...
There are some debug global variables that prevent using bullet safely on multi-threaded environments (tsan failures).
PATCH from marioprats@
2018-06-23 22:01:41 -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
Tigran Gasparian
618e3230a4
Fix: Use function context reference instead of value
2018-06-22 20:41:02 +02: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
Erwin Coumans
092e39a9e5
PyBullet urdfEditor example, use the pybullet_utils version (more up-to-date)
2018-06-22 09:18:55 -07:00
Erwin Coumans
fcde193d52
PyBullet.setPhysicsEngineParameter: only update solverResidualThreshold if valid values is given
2018-06-20 13:18:08 -07:00
Tigran Gasparian
b84eb8af74
Several fixes for the parallel raycasts
...
- Limits the maximum number of threads to 64, since btThreadSupportPosix
and btThreadsupportWin32 don't support more than 64 bits at this moment,
due to the use of UINT64 bitmasks. This could be fixed by using
std::bitset or some other alternative.
- Introduces a threadpool class, b3ThreadPool, which is a simple wrapper
around btThreadSupportInterface and uses this instead of the global task
scheduler for parallel raycasting. This is actually quite a bit faster
than the task scheduler (~10-15% in my tests for parallel raycasts),
since the advanced features (parallelFor) are not necessary for the
parallel raycasts.
- Puts 16*1024 of MAX_RAY_INTERSECTION_MAX_SIZE_STREAMING in
parentheses, since it otherwise causes problems with other operators
of equal precedence and introduces a smaller constant for Apple targets.
- Refactors the parallel raycasts code and adds some more profiling.
2018-06-19 18:41:42 +02:00
erwincoumans
42c9d9aa3c
lazy creation of batch scheduler, it causes issues with the physics.
2018-06-16 13:59:03 -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
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
Alexis David Jacq
6adea4964f
forgot one "isAlive" to change
2018-06-16 14:00:05 +02:00
Alexis David Jacq
50b5edd7b5
isDone instead of isAlive
2018-06-16 13:53:05 +02: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
YunfeiBai
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.
2018-06-15 17:59:26 -07:00
Alexis David Jacq
292a3f1cf6
methode isAlive
...
Method def isAlive(self), which defaults to return self._alive < 0, and each environment can override this method (Half Cheetah would implement return False)
(In response to bea468fb93
)
2018-06-15 17:55:20 +02:00
Tigran Gasparian
54986593c5
.
2018-06-15 17:46:31 +02:00
Tigran Gasparian
0b1dca3d9c
Updates the documentation for the pybullet function rayTestBatch to include the numThreads parameter.
2018-06-15 17:46:12 +02:00
Alexis David Jacq
a57c480f28
Update gym_locomotion_envs.py
...
As suggested in https://github.com/bulletphysics/bullet3/pull/1759 . The default isDone lets done = alive<0, and a special case is made for halfcheetah, forcing done=False.
I had to pass the 'alive' condition as an additive parameter of WalkerBaseBulletEnv.
2018-06-15 17:38:35 +02:00
Erwin Coumans
976fea4eca
fix saveRestoreState.py example
2018-06-15 08:31:39 -07:00
Tigran Gasparian
d244cf6061
Changes the default number of rays per thread from 32 to 16, when the user lets Bullet decide.
2018-06-15 17:13:10 +02:00
Tigran Gasparian
08409cae9f
Adds multithreading support for batch ray casts.
...
To enable the feature, enable the BULLET2_MULTITHREADING option.
Increases the number of rays that can go in a batch request by storing
them in the shared memory stream instead of the shared memory command.
Adds the API b3RaycastBatchSetNumThreads to specify the number of
threads to use for the raycast batch, also adds the argument numThreads
to the pybullet function rayTestBatch.
Rays are distributed among the threads in a greedy fashion there's a shared
queue of work, once a thread finishes its task, it picks the next
available ray from the task. This works better than pre-distributing the
rays among threads, since there's a large variance in computation time per ray.
Some controversial changes:
- Added a pointer to PhysicsClient to the SharedMemoryCommand struct, this
was necessary to keep the C-API the same for b3RaycastBatchAddRay, while
adding the ray to the shared memory stream instead of the command
struct. I think this may be useful to simplify other APIs as well, that
take both a client handle and a command handle.
- Moved #define SHARED_MEMORY_MAX_STREAM_CHUNK_SIZE to
SharedMemoryPublic. This was necessary for the definition of
MAX_RAY_INTERSECTION_BATCH_SIZE.
2018-06-15 16:47:04 +02:00
erwincoumans
25c5e87dc2
PyBullet.loadURDF, expose flags=URDF_INITIALIZE_SAT_FEATURES
2018-06-13 15:35:56 -07:00
Erwin Coumans
c27fb4003e
path -> const
2018-06-12 21:26:34 -07:00
erwincoumans
4f0959a136
Update b3RobotSimulatorClientAPI_NoDirect.h
2018-06-12 21:17:43 -07:00
Erwin Coumans
e24da97140
revert GJK change yet again, some degenerate case / regression
2018-06-12 19:52:38 -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
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
Erwin Coumans
38469deec7
getNumLinks -> getNumDofs, to make sure fixed objects don't transfer activation state
2018-06-11 11:41:33 -07:00
erwincoumans
6fb3cf7a43
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-06-11 08:34:37 -07:00
Erwin Coumans
e74f86d148
remove ANYmal meshes
2018-06-11 07:44:05 -07: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
Erwin Coumans
6ca3fe18f5
fix previous commit
2018-06-06 16:33:52 -07:00
Erwin Coumans
1bcb54dc29
remove some warnings
2018-06-06 16:10:20 -07:00
Erwin Coumans
dd444fc6c4
reshuffle args
2018-06-05 21:09:00 -07:00
erwincoumans
cb6d76d6b5
fix another parameter name in header, in enableJointForceTorqueSensor
2018-06-05 19:59:00 -07:00
erwincoumans
dff04c7f59
fix parameter name in header, computeForwardKinematics
2018-06-05 19:57:21 -07:00
erwincoumans
72d3f45b05
use new API b3CreateInProcessPhysicsServerFromExistingExampleBrowserAndConnect3 (not 2)
2018-06-05 19:54:08 -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
Erwin Coumans
ad35beb61f
fix typo
2018-06-05 16:25:43 -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
Tigran Gasparian
aefd5a9d66
Uses SHARED_MEMORY_SERVER instead of GUI_SERVER when starting a bullet server in the unit test.
2018-06-05 09:28:38 +02:00
Erwin Coumans
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
2018-06-05 11:41:41 +10:00
Erwin Coumans
e4cd88e24f
PyBullet: allow to choose the shared memory key when starting SHARED_MEMORY_SERVER
2018-06-05 11:36:54 +10:00
Tigran Gasparian
c49e060e81
Starts bullet server when testsuite is ran, uses pybullet_utils to manage clients.
2018-06-04 19:40:16 +02:00
Tigran Gasparian
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.
2018-06-04 15:10:48 +02:00
erwincoumans
4997eb8da2
add new file related to PyBullet userData
2018-06-02 13:52:00 -07:00
erwincoumans
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!
2018-06-02 13:40:08 -07:00
erwincoumans
cb6b7a7c38
PyBullet: expose flags to createMultiBody
2018-06-02 11:37:14 -07:00
Erwin Coumans
39c9ffa4c3
PyBullet IK: backward compatible changes related to joint damping
2018-06-01 23:25:47 -07:00
erwincoumans
68ea22bfd0
undo git merge conflict mess-up with IK
2018-06-01 22:50:06 -07:00
erwincoumans
92579f9196
Merge branch 'master' of https://github.com/erwincoumans/bullet3
...
# Conflicts:
# examples/SharedMemory/PhysicsServerCommandProcessor.cpp
2018-06-01 09:35:15 -07:00
erwincoumans
2d40a18315
picking shouldn't activate (wakeup) sleeping objects
2018-06-01 09:34:18 -07:00
Erwin Coumans
e74cd05e37
add space
2018-05-31 21:21:50 -07:00
erwincoumans
4c75e022c8
Use dofCount and not numJoints in PyBullet.calculateInverseKinematics, fixes null space demo
...
See baxter_ik_demo at https://github.com/erwincoumans/pybullet_robots
2018-05-31 21:07:04 -07:00
Erwin Coumans
70b3d4d0f4
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-31 18:16:57 -07:00
Erwin Coumans
76e88dddc5
add space to make conversion work
2018-05-31 18:16:40 -07:00
erwincoumans
309a07c21b
Merge branch 'master' into master
2018-05-31 18:05:50 -07:00
Erwin Coumans
378de87286
Merge remote-tracking branch 'bp/master'
2018-05-31 18:03:56 -07:00
Erwin Coumans
93a51e19d9
fix different arg name in header versus cpp
2018-05-31 17:58:12 -07:00
erwincoumans
75eaaecf49
Merge pull request #1722 from erwincoumans/master
...
implement accurate inverse kinematics in C++, exposed through PyBullet.calculateInverseKinematics
2018-05-31 16:50:52 -07:00
erwincoumans
3463d0a879
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-31 16:06:33 -07:00
erwincoumans
edc70582dd
implement accurate inverse kinematics in C++. PyBullet.calculateInverseKinematics gets "maxNumIterations=20", "residualThreshold=1.04" to tune
...
allow to provide current joint positions in IK, overriding the body joint positions, also IK target will be in local coordinates.
expose b3ComputeDofCount in C-API
2018-05-31 16:06:15 -07:00
erwincoumans
8567f6bb7c
PyBullet: rename sleepObjectAutoDeactivation -> sleeping.py
...
PyBullet: allow maximal coordinate rigid bodies to sleep/deactivate
2018-05-30 21:14:35 -07:00
erwincoumans
292e198a57
Merge pull request #1719 from erwincoumans/master
...
const char* for path, bump up pybullet version
2018-05-30 19:48:25 -07:00
erwincoumans
150a0e050e
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-30 19:47:47 -07:00
Erwin Coumans
491ecf2a20
export object auto-deactivation (sleeping) to pybullet (needs some more testing/configuring)
2018-05-30 18:37:08 -07:00
Erwin Coumans
14c6dee6a3
const char* for path
2018-05-30 14:37:49 -07:00
erwincoumans
1dec33d44b
move default linearslop to 0
2018-05-30 12:31:29 -07:00
erwincoumans
afa5ab25a6
Merge pull request #1715 from eastskykang/b3RobotAPI
...
added functions to b3RobotSimulatorClientAPI_NoGUI
2018-05-30 14:08:27 +10:00
Erwin Coumans
39808ddfdf
allow to run minitaur environment examples from pip version, like this:
...
python -m pybullet_envs.minitaur.envs.minitaur_trotting_env_example
python -m pybullet_envs.minitaur.envs.minitaur_reactive_env_example
2018-05-29 09:28:31 -07:00
donghokang
325ccad258
getDynamicsInfo function now works. Changed to call b3GetDynamicsInfo in getDynamicsInfo.
2018-05-29 16:41:37 +02:00
donghokang
6bd7a52bf8
solverResidualThreshold now can be set.
2018-05-29 16:25:28 +02:00
donghokang
a3e4582bef
getCollisionShapeData and getVisualShapeData were added to RobotSimulatorClinetAPI_NoGUI. b3RobotSimulatorJointMotorArrayArgs initialization bug fix.
2018-05-29 16:23:17 +02:00
Erwin Coumans
dcc9c4d0d9
fix HelloBulletRobotics example from b3Vector3 -> btVector3
2018-05-27 10:55:53 +10:00
Erwin Coumans
57b3e0d221
Move from b3Vector3 to btVector3 to support double precision in examples/RobotSimulator/b3RobotSimulatorClientAPI_NoGUI API.
2018-05-27 10:42:33 +10:00
Erwin Coumans
efe9161670
fix cmake build
2018-05-26 08:46:12 +10:00
Erwin Coumans
5de53d7355
PyBullet: add ANYmal.py quadruped example, usage:
...
pip install pybullet
python -m pybullet_envs.examples.ANYmal
2018-05-25 07:54:38 +10:00
Erwin Coumans
ab7bbf4396
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-24 15:50:02 +10:00
Erwin Coumans
ff4d0b1777
add HelloBulletRobotics C++ example with similar API to PyBullet
...
Add ANYmal quadruped robot URDF to pybullet_data
2018-05-24 15:48:45 +10:00
erwincoumans
abeae7e1e7
Merge pull request #1701 from erwincoumans/master
...
PyBullet: add option to cache graphics shapes for URDF files, handy f…
2018-05-23 14:47:01 +10:00
Erwin Coumans
8ace9251aa
pass by pointer instead of reference to satisy compiler
2018-05-23 14:22:22 +10:00
Erwin Coumans
94da262906
case sensitive header include
2018-05-23 13:51:51 +10:00
Erwin Coumans
77c332bd88
PyBullet: add option to cache graphics shapes for URDF files, handy for benchmarks with many duplicate robots
...
See https://github.com/erwincoumans/pybullet_robots ANYmal.py for an example.
PyBullet: Expose p.setPhysicsEngineParameter(solverResidualThreshold=1e-2) (b3PhysicsParamSetSolverResidualThreshold), increases solver performance a lot
PyBullet: Expose p.setPhysicsEngineParameter(contactSlop) Set it to zero, to avoid issues with restitution.
PyBullet: Expose isNumpyEnabled, return True is PyBullet was compiled with NUMPY support for 'getCameraImage'.
PyBullet: Expose p.ChangeDynamics(objectUid, linkIndex, contactProcessingThreshold), to avoid issues of speculative/predictive contacts with restitution.
See also http://twvideo01.ubm-us.net/o1/vault/gdc2012/slides/Programming%20Track/Vincent_ROBERT_Track_ADifferentApproach.pdf
2018-05-23 13:26:00 +10:00
erwincoumans
f1b4ffaf98
Merge pull request #1699 from benelot/fix-pendula-with-pbclient
...
Fix pendulum & manipulator envs with pybullet client
2018-05-23 08:20:40 +10:00
Benelot
4a16032820
Fix manipulators too.
2018-05-22 18:12:45 +02:00
Benelot
7b219e0ea6
Fix pendula to use the bullet-client.
2018-05-22 16:40:10 +02:00
Erwin Coumans
f5952a73e7
UrdfImporter: Collada DAE, rudimentary support for polylist (for ANYmal), assumes all polygons have 3 vertices
...
remove obsolete env from __init__.py
2018-05-23 00:28:49 +10:00
Erwin Coumans
9a706d9cfd
PyBullet: fix Gym envs
2018-05-23 00:24:03 +10:00
Erwin Coumans
a0a1c9347c
PyBullet: fix in Gym env
2018-05-23 00:18:17 +10:00
Erwin Coumans
a7a6e20d9c
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-20 14:19:49 +10:00
Erwin Coumans
90939279f9
PyBullet: cmake build, enable DBUILD_PYBULLET_NUMPY=ON
...
fix issue with HalfCheetahBulletEnv-v0 in previous commit
2018-05-20 14:18:53 +10:00
Erwin Coumans
964f52f62d
remove unsupported simpleHumanoid.py, use env = gym.make("HumanoidBulletEnv-v0") instead.
2018-05-20 12:35:33 +10:00
Erwin Coumans
0b2c9ea645
PyBullet: avoid a crash in SHARED_MEMORY_SERVER
2018-05-20 12:20:06 +10:00
Erwin Coumans
bcd209fd93
Merge remote-tracking branch 'bp/master'
2018-05-18 16:25:40 -07:00
Erwin Coumans
701b50ec12
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-18 16:25:27 -07:00
Erwin Coumans
0abe4151e5
Fix for 1643, allow to instantiate multiple PyBullet Gym environments (Ant, Humanoid, Hopper, Pendula etc) in the same process (same or other thread). It uses the pybullet_utils.bullet_client to achieve this.
2018-05-18 16:23:54 -07:00
erwincoumans
f90bd1f713
Merge pull request #1688 from erwincoumans/master
...
workaround for an out-of-date tinyxml2 version
2018-05-17 13:49:49 -07:00
Erwin Coumans
ff646fbef2
workaround for an out-of-date tinyxml2 version
2018-05-17 12:18:17 -07:00
erwincoumans
8f4d1e722e
Merge pull request #1686 from yuchenericwu2/master
...
Expose CFM parameters
2018-05-16 16:18:45 -07:00
erwincoumans
034dfba3ae
fix VR controllers only visible in one eye (remove stray glClear for testing planar reflection)
...
PyBullet: force both contactStiffness and contactDamping (report error otherwise)
2018-05-16 14:24:12 -07:00
Yuchen Wu
f03ae5a857
Expose CFM parameters in PhysicsClient.
...
Add b3PhysicsParamSetDefaultGlobalCFM() and
b3PhysicsParamSetDefaultFrictionCFM().
2018-05-16 13:46:19 -07:00
erwincoumans
b432daed65
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-16 12:11:29 -07:00
erwincoumans
0ca2c5f925
use Bullet3Common/b3AlignedObjectArray.h instead of LinearMath version in SharedMemory/PhysicsClientSharedMemory
2018-05-16 12:10:34 -07:00
Erwin Coumans
28b86ba0a4
fix some tsan issues (thread sanitizer)
2018-05-16 08:32:21 -07:00
Erwin Coumans
d17d496f97
fix potential asan/tsan issue
2018-05-15 13:24:28 -07:00
erwincoumans
e5a9b42f9a
expose PyBullet.setPhysicsEngineParameter(jointFeedbackMode)
...
use p.JOINT_FEEDBACK_IN_JOINT_FRAME if you want the joint feedback expressed in joint frame (instead of link inertial frame)
use p.JOINT_FEEDBACK_IN_WORLD_SPACE if you want the joint feedback in world space coordinates, instead of local link/joint coordinates.
Example: p.setPhysicsEngineParameter(jointFeedbackMode=p.JOINT_FEEDBACK_IN_WORLD_SPACE+p.JOINT_FEEDBACK_IN_JOINT_FRAME)
2018-05-11 19:52:06 -07:00
erwincoumans
1ec24a0853
fix PyBullet.applyExternalTorque for links (instead of base)
2018-05-11 19:35:27 -07:00
Erwin Coumans
e86d11f7b9
PyBullet combineUrdf, make createMultiBody much faster, by temporarily disabling rendering
2018-05-10 20:52:51 -07:00
erwincoumans
06a23ecd6d
PyBullet TinyRenderer, fix cylinder (don't add caps like a capsule), also convert colors stored in visual shapes, if needed.
2018-05-10 18:37:48 -07:00
erwincoumans
e488603603
UrdfEditor: fix indentation, causing an issue when a link had no collision shape but visual shapes
2018-05-10 18:05:50 -07:00
erwincoumans
80bab22b9c
urdfEditor: add euler -> quaternion conversions (otherwise orientations get silently ignored)
...
urdfEditor: move combine code into UrdfEditor.joinUrdf
urdfEditor: Fix geom_length
2018-05-10 15:08:00 -07:00
erwincoumans
3116cd82da
fix MSVC 2010 compile issue
...
urdfEditor: fix scale incorrectly saved in urdfEditor.saveUrdf
urdfEditor: fix linkMeshScaleArray in wrong location
2018-05-10 12:04:13 -07:00
Erwin Coumans
a0e72b2ae3
Merge branch 'master' of https://github.com/erwincoumans/bullet3
...
# Conflicts:
# examples/pybullet/gym/pybullet_utils/examples/combineUrdf.py
2018-05-09 10:29:20 -07:00
Erwin Coumans
414b3ef9bb
PyBullet urdfEditor improvements: saveUrdf mesh scale, fix incorrect index, add getCameraImage in examples/combineUrdf.py
2018-05-09 10:28:12 -07:00
Erwin Coumans
be7c6ac967
PyBullet add getCameraImage to debug urdfEditor/createMultiBody
2018-05-08 23:23:53 -07:00
Erwin Coumans
1e51e2b859
tweaks in urdfEditor.py and combineUrdf.py, put KUKA on top of Husky as test.
2018-05-08 23:14:39 -07:00
Erwin Coumans
2d1689cba5
add example to joint two URDF files, using the urdfEditor (combineUrdf.py)
2018-05-08 17:18:58 -07:00
Erwin Coumans
d436be1d79
add __init__.py for pybullet_utils examples
2018-05-08 13:31:30 -07:00
Erwin Coumans
ad43de285c
add bullet_client.py to pybullet_utils, with simple example
2018-05-08 10:12:19 -07:00
Erwin Coumans
3a4d1799d8
remove "DO NOT SUBMIT" comments, it blocks commits in google3
2018-05-07 17:35:55 -07:00
Erwin Coumans
0b5785421b
PyBullet: re-add API to header
2018-05-07 16:59:06 -07:00
Erwin Coumans
7bc85c7d43
PyBullet.SHARED_MEMORY_SERVER, use secondary key for server
2018-05-07 16:01:38 -07:00
Erwin Coumans
7383843b24
expose PyBullet.SHARED_MEMORY_SERVER
...
connect from 1 different PyBullet client using PyBullet.SHARED_MEMORY)
(don't use more than 1 other client to submit commands in parallel)
2018-05-07 15:57:36 -07:00
erwincoumans
ab4b663800
Merge pull request #1671 from erwincoumans/master
...
don't use the URDF inertia element, unless flag CUF_USE_URDF_INERTIA …
2018-05-03 14:52:09 -07:00
Erwin Coumans
84b20bda80
don't use the URDF inertia element, unless flag CUF_USE_URDF_INERTIA is set, not for the diagonal and also not for the inertial frame shift.
2018-05-03 14:24:16 -07:00
YunfeiBai
e5036fbc3a
Merge remote-tracking branch 'upstream/master'
2018-05-03 10:48:55 -07:00
YunfeiBai
aa6b8f66e9
Fixed a bug in projective texture shader.
2018-05-03 10:46:59 -07:00
Erwin Coumans
0c706eb08a
fix some incompatibilities between google3/third_party/GL,EGL, glad
2018-05-03 09:06:30 -07:00
Erwin Coumans
4a8ad1a54e
fix posix memory release issues
...
fix compile problems on Mac OSX
reduce shared memory size on Mac (>512*1024 fails to allocate)
2018-05-02 15:39:16 -07:00
erwincoumans
1f6afcda30
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-02 14:32:59 -07:00
erwincoumans
3a5f778b70
expose lsMemory destroy function to release thread memory
2018-05-02 14:32:43 -07:00
erwincoumans
cee3ecde2b
Merge pull request #1664 from erwincoumans/master
...
PyBullet: fix some memory leaks
2018-05-02 13:54:07 -07:00
erwincoumans
9d66d95b18
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-02 13:18:17 -07:00
erwincoumans
790deb2d54
fix memory leak in PyBullet.getJointStates, fixes issue #1661
2018-05-02 13:12:25 -07:00
Erwin Coumans
2b5f86a593
fix memory leak
2018-05-02 12:49:35 -07:00
erwincoumans
d7e81590b5
fix a memory leak
2018-05-02 12:24:31 -07:00
erwincoumans
78629e1c6c
Merge pull request #1637 from erwincoumans/master
...
PyBullet: add signed distance field support, with example/signedDista…
2018-05-02 09:20:04 -07:00
Erwin Coumans
dde3140987
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-05-01 13:02:51 -07:00
erwincoumans
c7d9afac1e
fix SoftDemo crash, due to changes in OpenGLGuiHelper rendering
...
fixes Issue #1655
2018-05-01 09:23:08 -07:00
Erwin Coumans
85db288a95
App_PhysicsServer_SharedMemory_VR: expose max_num_object_capacity and max_shape_capacity_in_bytes (and shared_memory_key)
...
Default values are:
int maxNumObjectCapacity = 128 * 1024;
int maxShapeCapacityInBytes = 128 * 1024 * 1024;
int shared_memory_key = -1
2018-04-30 23:01:15 +02:00
erwincoumans
d32e3e51f6
Merge pull request #1650 from JanMatas/fix-softbody-leak
...
Fix Large memory leak in bullet Softbody
2018-04-30 22:16:39 +02:00
Jie Tan
20dd3d265b
update README.md to include paper link in Arxiv.
2018-04-30 11:09:59 -07:00
Jan Matas
b1f85268f0
Check for null
2018-04-30 19:01:53 +01:00
Jie Tan
26cebc9aa5
rewrite the README file.
2018-04-26 21:26:08 -07:00
Jan Matas
21418934e0
Reset sparsesdf to free memory.
2018-04-25 16:17:28 +01:00
Jie
a375a349ce
make sure that the pre-trained galloping and trotting policies work for the minitaur_reactive_env and minitaur_trotting_env environments.
2018-04-24 21:48:27 -07:00
Erwin Coumans
552cb5852a
PyBullet: add signed distance field support, with example/signedDistanceField.py
...
See also data\toys\concave_box.urdf and data\toys\concave_box.cdf
data\toys\concave_box.cdf was generated from concave_box.obj using
//GenerateSDF.exe -r "32 32 32" -d "-1.6 -1.6 -.6 1.6 1.6 .6" concave_box.obj
//SDF is based on code from DiscreGrid, https://github.com/InteractiveComputerGraphics/Discregrid
2018-04-16 22:57:43 +02:00
Erwin Coumans
fcce77fe49
fix spaces/tab issue in urdfEditor.py
2018-04-12 14:01:17 -07:00
erwincoumans
391b0e4061
Merge pull request #1588 from GaborPuhr/Fix-#1582
...
Fix for #1582
2018-04-12 13:32:51 -07:00
erwincoumans
be46d73ef8
Merge pull request #1617 from haudren/topic/fixJacobian
...
Add a few jacobian tests
2018-04-12 13:30:04 -07:00
erwincoumans
25cb37a0d7
Merge remote-tracking branch 'bp/master'
2018-04-12 12:48:37 -07:00
erwincoumans
dbb0318782
fixes related to tinyxml2
2018-04-12 12:46:43 -07:00
erwincoumans
9c5d757879
PyBullet: fix memory leak in setJointMotorControlArray
...
Fixes issue #1633
2018-04-12 12:43:29 -07:00
Erwin Coumans
11008d8110
fixes, backwards compatibility
2018-04-12 09:28:30 -07:00
Erwin Coumans
719c352216
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-04-12 07:49:23 -07:00
erwincoumans
b0d421fa11
Merge pull request #1632 from erwincoumans/master
...
upgrade from tinyxml to tinyxml2
2018-04-12 07:30:05 -07:00
erwincoumans
9c77e07494
upgrade from tinyxml to tinyxml2
2018-04-12 00:09:44 -07:00
erwincoumans
b53facfc25
Merge pull request #1629 from erwincoumans/master
...
Preparation to add signed distance field collision detection.
2018-04-12 00:02:25 -07:00
Erwin Coumans
bd0aed3e36
add ARS to train/eval Minitaur
2018-04-11 18:14:56 -07:00
Erwin Coumans
40b285ebfd
fixes in minitaur leg mapping
2018-04-11 18:13:46 -07:00
erwincoumans
2bc246b0b1
fixes in relative imports
2018-04-11 18:00:43 -07:00
erwincoumans
b18d407ca4
screenshot frame counter start at 0 (instead of 100)
2018-04-11 17:17:35 -07:00