Commit Graph

3614 Commits

Author SHA1 Message Date
jingyuc
6c2023e330 add mode visualizer example. 2021-07-28 12:34:01 -04:00
jyc-n
bfa74dbacd initial translation WIP 2021-07-28 00:03:51 -04:00
jingyuc
67b58428e8 clean up. now the inertia tensor is calculated based on geometry, and it is updated everytime step 2021-07-27 15:59:25 -04:00
jyc-n
0983d36eff rotation is working 2021-07-26 21:48:57 -04:00
jyc-n
7678545e76 clean up initialzation 2021-07-26 15:30:35 -04:00
jingyuc
9baee29300 simple rigid translation is working. 2021-07-26 11:28:37 -04:00
jingyuc
6f3dd32f37 add new btReducedSoftBody and btReduceDeformableSolver class 2021-07-23 16:20:09 -04:00
jyc-n
87e20f450b save files. misc 2021-07-22 21:55:34 -04:00
jyc-n
c325da8b34 add new ReducedSoftBody class. move read files functions to btReducedSoftBodyHelpers 2021-07-22 11:43:26 -04:00
jingyuc
237333d030 make the impulse scaled with nodal mass. all binary mode files contains all modes info. 2021-07-19 15:26:00 -04:00
jingyuc
4119d8812e add initial impulse 2021-07-18 00:52:13 -04:00
jingyuc
c24f2a72ef add internal force 2021-07-16 15:01:44 -04:00
jingyuc
4b6eaeed4c kinematic tested. specified delta_v as a cosine function. 2021-07-15 17:30:08 -04:00
jingyuc
d390360f9e clean up kinematic test setup 2021-07-14 20:01:50 -04:00
jingyuc
f1e86bf257 test modes kinematics 2021-07-14 16:00:28 -04:00
jingyuc
fa00ee2bbd Start the reduced deformable example. Read in mesh and modes files. 2021-07-13 00:45:11 -04:00
erwincoumans
0e124cb2f1
Merge pull request #3841 from erwincoumans/master
fix some msan (memory sanitizer) issues
2021-05-12 13:54:56 -07:00
erwincoumans
a435fb7a41
Merge pull request #3819 from cadop/bullet-client-subprocess-safety
Fix for bullet_client to be used from a class instance during multiprocessing
2021-05-12 13:54:00 -07:00
Erwin Coumans
92fb2db0a3 fix some msan (memory sanitizer) issues 2021-05-12 20:14:15 +00:00
erwin coumans
adcf785a4a re-enable eGUIHelperSetRgbBackground 2021-05-07 09:07:40 -07:00
Erwin Coumans
cd76d605a9 more fixes for tsan 2021-05-07 15:37:56 +00:00
erwin coumans
f14911c998 fix a tsan test failure 2021-05-06 18:34:43 -07:00
erwin coumans
e952ac6f63 Add pybullet.configureDebugVisualizer(rgbBackground=[red,green,blue]) (each component a float in the range [0,1])
This is an alternative to passing options="--background_color_red=red --background_color_green=green --background_color_blue=blue" in the connect method.
2021-05-06 18:08:22 -07:00
erwin coumans
8e85dedaa9 PyUnicode_AsUTF8 breaks python 2.x compatibility 2021-05-06 10:19:15 -07:00
erwin coumans
b696ed7d7b enable roll angle in pybullet.computeViewMatrixFromYawPitchRoll / b3ComputeViewMatrixFromYawPitchRoll 2021-04-28 12:13:31 -07:00
cadop
ace34c4d08 check the process id before disconnecting 2021-04-27 19:33:37 -04:00
erwincoumans
45d3ead747
Merge pull request #3356 from erwincoumans/master
LICENSE should have no txt extension
2021-04-22 16:46:07 -07:00
Erwin Coumans
184b7816d0 LICENSE should have no txt extension 2021-04-22 16:45:29 -07:00
erwincoumans
a7832e3a18
Merge pull request #3355 from erwincoumans/master
sync recent changes
2021-04-22 16:37:01 -07:00
Erwin Coumans
c915e82d49 Merge branch 'master' of github.com:erwincoumans/bullet3 2021-04-22 16:20:31 -07:00
erwincoumans
00dcc77885
Merge pull request #3352 from erwincoumans/master
getDynamicsInfo report local inertia diagonal for useMaxima… …
2021-04-20 20:22:38 -07:00
erwin coumans
a5761f2b10 pybullet: getDynamicsInfo report local inertia diagonal for useMaximalCoordinates 2021-04-20 20:20:55 -07:00
Erwin Coumans
9f91e6837a remove type annotations
bump up pybullet version
2021-04-20 15:50:12 -07:00
erwincoumans
201e7159d6
Merge pull request #3351 from erwincoumans/master
PyBullet: expose useMultiBody argument for loadMJCF command, expose sleeping threshold
2021-04-20 14:42:42 -07:00
erwin coumans
e58e5bdf95 PyBullet:
expose pybullet.changeDynamics(sleepThreshold), default 0.05, for both useMaximalCoordinates=False and True
When the dot(vel,vel) < sleepThreshold for longer than 2 seconds (this timeout is hard coded) objects that have the ACTIVATION_STATE_ENABLE_SLEEPING enabled with be deactivated
Example:
p.changeDynamics(ob, -1, activationState=p.ACTIVATION_STATE_ENABLE_SLEEPING, sleepThreshold=0.05)
2021-04-20 11:29:27 -07:00
erwin coumans
fd154cee8f set default sleeping threshold for useMaximalCoordinate btRigidBody to be similar to btMultiBody (0.05) 2021-04-20 11:14:28 -07:00
erwin coumans
78f5b141f9 fix for 'useMaximalCoordinates' rigid body in PyBullet: activate a rigid body after picking 2021-04-20 10:24:09 -07:00
erwin coumans
84a63cf221 allow to use the useMultiBody argument for loadMJCF command
note that for dynamic and static objects (without joints) it is best to set useMultiBody=False
2021-04-19 20:37:26 -07:00
r-a-sattarov
a923ce184e examples/RobotSimulator/CMake: fixed warning (mis-matching arguments) 2021-04-19 23:32:57 +03:00
erwincoumans
48ba5a37ad
Merge pull request #3348 from erwincoumans/master
disable texture release, it causes crashes, need to figure out better…
2021-04-15 20:30:13 -07:00
erwin coumans
910c20334f disable texture release, it causes crashes, need to figure out better solution 2021-04-15 20:26:01 -07:00
Erwin Coumans
973d8c128f Merge branch 'master' of github.com:erwincoumans/bullet3 2021-04-07 22:13:18 -07:00
jaraujo98
dcf9c8d6a5
Replace xrange with range
The xrange function was deprecated in Python 3. Removing it for compatibility.
2021-04-06 11:26:39 -07:00
erwincoumans
21d1b8fc71
Merge pull request #3339 from erwincoumans/master
add pybullet_examples, fix pybullet_envs.minitaur.envs_v2, bump up pybullet 3.1.2
2021-04-05 19:53:38 -07:00
Erwin Coumans
5205dafcc2 add __init__.py 2021-04-05 19:51:38 -07:00
Erwin Coumans
29f388a5d8 add selected examples under pybullet_examples 2021-04-05 19:50:46 -07:00
Erwin Coumans
513e3a7db4 add more __init__.py files 2021-04-05 18:07:39 -07:00
Erwin Coumans
674c82db89 bump up pybullet version to 3.1.2
add missing __init__.py files
2021-04-05 17:58:25 -07:00
erwincoumans
2c3318f86d
Merge pull request #3331 from erwincoumans/master
add performCollisionDetection (stepSimulation also calls this, but do…
2021-04-05 12:54:39 -07:00
erwin coumans
8b8c1af6a4 Cleaned-up/fixed version of this Pull Request #3239, thanks to Wenlong Lu 2021-04-05 11:40:45 -07:00
erwin coumans
4d34ba7310 add updated Laikago envs_v2, with PMTG and MPC examples.
python -m pybullet_envs.minitaur.envs_v2.locomotion_gym_env_test
python -m pybullet_envs.minitaur.envs_v2.examples.laikago_mpc_wrapper_example
python -m pybullet_envs.minitaur.envs_v2.examples.laikago_static_gait_example
python -m pybullet_envs.minitaur.agents.baseline_controller.locomotion_controller_example
PMTG example, not well tuned:
python -m pybullet_envs.minitaur.envs_v2.examples.laikago_pmtg_example
2021-04-05 11:35:19 -07:00
Erwin Coumans
58d47935a3 Merge remote-tracking branch 'bp/master' 2021-03-26 11:53:37 -07:00
erwin coumans
d1c4c41b9a add performCollisionDetection (stepSimulation also calls this, but does more, including solving constraints and integration) 2021-03-26 10:31:13 -07:00
erwincoumans
93be7e6440
Merge pull request #3311 from erwincoumans/master
allow to compile pybullet using btDiscreteDynamicsWorld (no btMultiBody, no btSoftBody, no btDeformableBody)
2021-03-26 10:29:04 -07:00
erwin coumans
0196edd4d2 update single aabb, during resetJointState/resetBasePositionAndOrientation, to allow raycast/collision queries. 2021-03-26 09:11:59 -07:00
erwin coumans
546212b158 add mug obj 2021-03-22 16:53:17 -07:00
erwin coumans
6f7d458679 add missing line in previous commit 2021-03-16 18:17:23 -07:00
erwincoumans
395e17c7bf
Merge pull request #3238 from yycho0108/add-link-names-to-createmultibody
Add linkNames argument to CreateMultibody
2021-03-15 22:48:33 -07:00
erwin coumans
5cf8ee3360 Allow to compile pybullet using btDiscreteDynamicsWorld (no multibodies and no deformables), this allows to create Jacobian and Mass matrix (and A=J*M-1*J_transpose) with MLCP solvers
Add examples/pybullet/gym/pybullet_utils/readwriteurdf.py, this allows to read a URDF and write the URDF with more reasonable inertia tensors (based on mass and collision volumes)
2021-03-15 22:44:55 -07:00
erwincoumans
0c7ea68709
Merge pull request #3246 from Danfoa/master
Fix Stable-PD Control bug on First Order Taylor approximation of next `q` state
2021-03-07 08:19:37 -08:00
mbennice
296cd85f60 Fix tab/spaces 2021-03-05 09:54:53 -08:00
mbennice
237843b93a Default user data text to empty string when null. 2021-03-05 09:52:10 -08:00
Erwin Coumans
b619763569 Merge remote-tracking branch 'bp/master' 2021-03-04 09:38:13 -08:00
erwin coumans
3963f077fc Fix memory leak in EGL / GUI mode, resetSimulation with textures in GUI mode.
Fixes Issue #3285
2021-03-04 09:13:22 -08:00
erwincoumans
7b84fabb1e
Merge pull request #3291 from vabr-g/efficient-find
Optimize calls to find*() for a single char.
2021-03-02 10:06:54 -08:00
Vaclav Brozek
364e98c92d Optimize calls to find*() for a single char.
The character literal overload is more efficient.
2021-03-02 18:59:31 +01:00
Erwin Coumans
adcaa75777 enable v-hacd in cmake for BulletRobotics and pybullet build (use cmake -DENABLE_VHACD=OFF .. to disable)
cmake: enable stable PD plugin (-DDSTATIC_LINK_SPD_PLUGIN)
btMultibody, make some args const in mulMatrix
2021-03-01 14:03:48 -08:00
vabr-g
e4963f73f2
Fix a null dereference in UrdfParser
When the parser sees no <inertial> tag inside a <deformable>, it logs an error but does not return false. So in the next step, a null pointer is dereferenced.

This can be tested with loading the following URDF:
```
<?xml version="1.0"?>
<robot name="rhythm_carrot_sticks">
  <deformable name="bag">
  </deformable>
</robot>
```
2021-03-01 21:21:11 +01:00
Erwin Coumans
97add36b9f update bullet_client.py to accept options
p.connect(p.GUI, options="--background_color_red=1 --background_color_blue=1 --background_color_green=1")

If you use bullet_client.py, you can use:
p = bc.BulletClient(connection_mode=pybullet.GUI,options="--background_color_red=1 --background_color_blue=1 --background_color_green=1")
--mouse_move_multiplier=0.4
--mouse_wheel_multiplier=0.01
--mp4=moviename.mp4
2021-02-25 16:32:39 -08:00
erwincoumans
abea1a8484
Create LICENSE.txt 2021-02-08 08:06:16 -08:00
erwincoumans
af6aa5fb99
Create LICENSE.txt 2021-02-08 08:05:46 -08:00
erwincoumans
c3f137773b
Create LICENSE.txt 2021-02-08 08:05:22 -08:00
erwincoumans
ecbbf24d2a
Create LICENSE.txt 2021-02-08 08:04:10 -08:00
erwincoumans
1257ab5915
Create LICENSE.txt 2021-02-08 08:03:23 -08:00
erwincoumans
b582287943
Create LICENSE.txt 2021-02-08 08:02:52 -08:00
erwincoumans
7a6fb20da8
Create LICENSE.txt 2021-02-08 08:02:02 -08:00
erwincoumans
a061644454
Create LICENSE.txt 2021-02-08 08:01:18 -08:00
erwincoumans
643f9c90be
Create LICENSE.txt 2021-02-08 08:00:22 -08:00
erwincoumans
5d149250ba
Create LICENSE.txt 2021-02-08 07:58:30 -08:00
erwincoumans
062860e455
Create LICENSE.txt 2021-02-08 07:57:53 -08:00
erwincoumans
1fbee5299a
Create LICENSE.txt 2021-02-08 07:57:25 -08:00
erwincoumans
6ad7e8fa6e
Create LICENSE.txt 2021-02-08 07:57:00 -08:00
erwincoumans
3b52be333b
Create LICENSE.txt 2021-02-08 07:56:27 -08:00
erwincoumans
70d7063249
Create LICENSE.txt 2021-02-08 07:55:45 -08:00
daniel.ordonez
f719c27b04 Fix Stable PD bug on First Order Taylor approximation of next q state 2021-01-27 21:59:49 -05:00
erwincoumans
537ccb2200
Merge pull request #3237 from glebm/fix-pthread
CMake: Use Threads instead of pthread directly
2021-01-23 10:26:58 -08:00
Gleb Mazovetskiy
d248271e38 CMake: Also link Threads correctly in examples/ 2021-01-20 18:20:43 +00:00
yycho0108
6f65a12b3a no nullptr 2021-01-20 16:45:23 +09:00
yycho0108
c0d9553d65 add link names args to CreateMultibody 2021-01-20 15:53:24 +09:00
erwincoumans
de8f04f819
Update pybullet.c 2021-01-17 23:42:28 -08:00
Erwin Coumans
21bc93a084 disable cone friction in example 2021-01-15 14:42:12 -08:00
Erwin Coumans
10020baa71 fix memory leak in calculateInverseKinematics2, reported here:
https://github.com/bulletphysics/bullet3/issues/3228
Thanks jcoholich for the report and repro case!
2021-01-15 14:38:48 -08:00
Erwin Coumans
375d7097e4 don't postpone release for remote visualizer (otherwise it blocks forever) 2020-12-23 10:42:25 -08:00
Erwin Coumans
3f9d0197ec allow to specify hostName 2020-12-22 20:13:03 -08:00
erwincoumans
bbb6f86d12
Merge pull request #3198 from erwincoumans/master
fix changeDynamics for to set lower/upper joint limits
2020-12-22 17:18:09 -08:00
Erwin Coumans
6d1dae286b GraphicsServerExample, disallow COV_ENABLE_SINGLE_STEP_RENDERING 2020-12-22 17:10:51 -08:00
erwincoumans
b1f76960ff
Merge pull request #3195 from WenlongLu/kinematic_fix
Disable velocity calculation in kinematic multibody mode by default
2020-12-16 17:42:30 -08:00
Erwin Coumans
c97f09cf66 Merge branch 'master' of github.com:erwincoumans/bullet3 into master 2020-12-15 16:24:36 -08:00
Erwin Coumans
93575a2e38 fix changeDynamics for to set lower/upper joint limits and joint limit max force 2020-12-15 16:24:24 -08:00
WenlongLu
62eb2f7788 Disable velocity calculation in kinematic multibody mode by default
We haven't implemented this for the multi body joints. To be consistent, let's disable it for the base as well, and let user to set the velocities.
2020-12-14 17:19:27 -08:00
erwincoumans
87b633bb76
Update pybullet.c
send output to stderr (pybullet build message), helps towards Issue #3131
2020-12-08 17:38:47 -08:00
Erwin Coumans
3e16c616d5 cmake OPTION(USE_OPENVR OFF) so only compile OpenVR VR examples when explicitly set to ON
to avoid breaking builds
2020-12-04 08:52:28 -08:00
Erwin Coumans
0f05edf1ae fix #ifdef in clsocket 2020-12-02 18:01:02 -08:00
Erwin Coumans
ec55878a82 remove some files, wheels are exceeding 100MB on pypi... 2020-11-26 15:06:51 -08:00
erwincoumans
272c7099d3
Merge pull request #3090 from ErikGartner/master
Revert 32277c
2020-11-25 09:25:46 -08:00
WenlongLu
ddbe6f7a5a remove duplicated cpp file in premake4.lua 2020-11-19 15:41:27 -08:00
erwincoumans
875a6a4446
Merge pull request #3153 from WenlongLu/kinematic_multibody_interface
SharedMemory interface to set and get dynamic types
2020-11-18 11:05:03 -08:00
Erwin Coumans
ccf4e70a63 Merge remote-tracking branch 'bp/master' into master 2020-11-17 23:21:02 -08:00
erwincoumans
05b5d2ee04
Merge pull request #3145 from WenlongLu/kinematic_multibody_link
Kinematic Multibody Joint/Link
2020-11-17 15:20:52 -08:00
Erwin Coumans
76fbbcd37e fix premake build 2020-11-13 17:36:19 -08:00
WenlongLu
8ccd67727f Add KinematicMultiBodyExample to premake4.lua 2020-11-13 15:56:09 -08:00
WenlongLu
c32e721262 Add KinematicMultiBodyExample to premake4.lua 2020-11-13 15:39:54 -08:00
erwincoumans
a72ce295b4
Merge pull request #2840 from mahyaret/master
KukaCamGymEnv
2020-11-13 10:44:26 -08:00
erwincoumans
464bbc4ddd
Merge pull request #3089 from Steven89Liu/fixDOF
we should use the m_jointMotorForceMultiDof which is indexed by degree
2020-11-13 10:06:52 -08:00
erwincoumans
9344606e5d
Merge pull request #3086 from ManifoldFR/urdfparser-patch
UrdfParser: make unspecifed axis warning print single line
2020-11-13 10:04:33 -08:00
erwincoumans
2a0f811c3b
Merge pull request #3076 from tfederico/master
Add multiclip loading and reward
2020-11-13 10:02:49 -08:00
erwincoumans
63f5dbf97b
Merge pull request #3132 from WenlongLu/kinematic_multibody_base
Kinematic Multibody Base
2020-11-13 10:02:10 -08:00
Shayekh Bin Islam
91c002232f
Sutton's url shifted
The site hosting the c code pole.c has been changed.
2020-11-13 11:26:09 +06:00
WenlongLu
21836afb97 Add share memory commands for user to change object dynamic types 2020-11-11 22:41:33 -08:00
WenlongLu
56b42925d8 Support kinematic multibody joints/links 2020-11-11 22:14:07 -08:00
WenlongLu
5a1977b176 Remove the uninitialized child link in the example 2020-11-11 14:12:47 -08:00
erwincoumans
20c6178329
Merge pull request #3125 from erwincoumans/master
improvement in b3PluginManager, hashing the postfix if available
2020-11-03 12:48:48 -08:00
erwincoumans
da28ca734a
Update b3PluginManager.cpp 2020-11-03 09:47:38 -08:00
WenlongLu
2fc72577f1 minor example cleanup 2020-10-29 23:35:42 -07:00
WenlongLu
b95f9d3afb Add kinematic multibody base example 2020-10-29 23:34:53 -07:00
erwincoumans
edbce66542
Update b3PluginManager.cpp 2020-10-29 17:06:18 -07:00
Erwin Coumans
e21c6c9f46 fix compile issues 2020-10-28 19:18:33 -07:00
r-a-sattarov
c4073179a2 X11: added define for MCST e2k (Elbrus 2000) architecture 2020-10-28 22:01:40 +03:00
Erwin Coumans
e3dc3761a0 Merge remote-tracking branch 'bp/master' 2020-10-28 11:07:59 -07:00
Erwin Coumans
49be2cffaa improvement in b3PluginManager, hashing the postfix if available
(allows to load a plugin in the current executable instead of from disk)
2020-10-28 11:06:26 -07:00
erwincoumans
62684840bd
Merge pull request #3120 from erwincoumans/master
add kinematic rigid body ground example.
2020-10-28 07:43:39 -07:00
erwincoumans
e3274d7fc1
Update model.cpp
fix uv wrapping, thanks to Marek
2020-10-27 13:38:01 -07:00
Erwin Coumans
a67681aee5 add kinematic rigid body ground example. 2020-10-22 11:25:08 -07:00
erwincoumans
4c46f9ce39
Merge pull request #3087 from davidcavazos/patch-1
Add documentation to notebook
2020-10-14 11:54:30 -07:00
David Cavazos
656a1e7472
Removed notice on slow installation 2020-10-13 15:34:33 -07:00
erwincoumans
fea468d241
Update RBDModel.h
destructor needs to be virtual
2020-10-08 14:10:08 -07:00
Erwin Coumans
ad0994022d allow streaming of data 2020-10-07 10:12:02 -07:00
Erwin Coumans
bc51ac3f0f Support getCachedReturnData for PhysicsLoopBack
re-use existing code path for streaming plugin return data (work-in-progress)
2020-10-07 08:24:33 -07:00
Erwin Coumans
954ceff2ec Add an option for a plugin to report return data after calling executePluginCommand. Also add python binding.
Currently the return data has to fit in shared memory, 8MB (Linux, Windows) or 1MB (Apple)
Preparation for streaming is added (to allow unlimited return data, see CMD_CUSTOM_COMMAND_STREAM_RETURN_DATA)

New C-API: b3GetStatusPluginCommandReturnData
PyBullet reports return data if available, in pybullet_executePluginCommand

For the plugin developer:
plugin can provide additional return data for executePluginCommand in the b3PluginContext, during executePluginCommand.
Lifetime of this m_returnData pointer is minimum of next call to the next executePluginCommand or plugin termination.
2020-10-06 20:19:39 -07:00
Erwin Coumans
7a6c90409f Merge remote-tracking branch 'bp/master' into master 2020-10-06 13:56:06 -07:00
Yuxiang Yang
82182e1ba7
Add <inertia> for missing links in a1.urdf
Currently a few collision frames in a1.urdf ("{FL/FR/RL/RR}_upper_shoulder") do not have <inertia> defined, and pybullet loads as if they have 1kg mass. This leads to inaccurate simulation results.
2020-10-06 00:28:24 -07:00
Erwin Coumans
6b91ecc0c5 allow to set changeDynamics(body, link, contactProcessingThreshold) for multibodies
(set to 0 if restitution is important)
2020-10-05 16:33:41 -07:00
Erik Gärtner
777ab5a5ab Revert "in case of substeps use the compensated delta time / numSubSteps to convert between force and impulse."
This reverts commit 32277c7bd5.
2020-10-02 15:49:23 +02:00
Steven89Liu
104789ca99 we should use the m_jointMotorForceMultiDof which is indexed by degree
of freedom.
2020-10-01 15:58:45 +08:00
David Cavazos
e78d31171b
Fix Colab link 2020-09-29 08:32:48 -07:00
David Cavazos
9c2313f5c8
Add documentation
Adds documentation to explain each step and have links to useful pages to improve the onboarding experience.
2020-09-29 08:30:36 -07:00
ManifoldFR
6a9cd4615c fix typo 2020-09-29 12:02:35 +02:00
ManifoldFR
281e7df2ec UrdfParser: make axis warning print single line 2020-09-29 12:00:05 +02:00
tfederico
be27283a8e add pretrained policies and remove extra motion file 2020-09-25 12:16:51 +01:00
Erwin Coumans
3d220888fa disable cone friction 2020-09-24 09:19:51 -07:00