Chuyuan Fu
e818452494
Add grasp box example and fixjoint boxes example.
...
tmp
gripper is working?
fix joint example
2019-03-07 17:10:16 -08:00
Chuyuan Fu
9141caf67e
Add joint limit example.
...
The demo artifically exceeds joint limit due to numerical errors caused
by large ratio.
2019-03-07 17:09:32 -08:00
Chuyuan Fu
5d60c274c4
Add an example of a stack of boxes of large mass ratio. The default
...
solver cannot solve it effectively.
2019-03-07 17:08:16 -08:00
erwincoumans
b94a55ee5f
Merge remote-tracking branch 'bp/master'
2019-03-06 23:29:29 -08:00
erwincoumans
0af0f193ee
reduce size of SharedMemoryStatus by moving state details into shared memory streaming block.
2019-03-06 23:27:59 -08:00
erwincoumans
4d39b7caca
Merge pull request #2142 from fuchuyuan/fixedJoint
...
Fixed joint
2019-03-06 22:03:00 -08:00
erwincoumans
a9e350b0fb
Merge pull request #2141 from erwincoumans/blocksolver
...
solver experiment
2019-03-06 22:02:44 -08:00
Chuyuan Fu
8b5a238b2f
Add boxes joint by fixed joint example\n Onlyp2p joint works
2019-03-06 13:47:49 -08:00
erwincoumans
d07c86842c
fix regression in MJCF import for TinyRenderer
...
Fixes Issue 2119
https://github.com/bulletphysics/bullet3/issues/2119
2019-03-03 12:01:49 -08:00
erwincoumans
23dd0b50f9
apply mouse move multiplier
2019-03-03 11:35:30 -08:00
Erwin Coumans
bd0501d3fc
fix example meshScale
2019-03-02 12:11:59 -08:00
Erwin Coumans
3997ac2b61
fix issue with retina scale and picking in createVisualShape.py example
2019-03-02 12:08:25 -08:00
erwincoumans
1bac759a43
Update fileIOPlugin.cpp
...
fix check for (zip) file filename
2019-03-01 07:43:06 -08:00
erwincoumans
f51555d1ab
Merge pull request #2134 from erwincoumans/physx_clean
...
PhysX backend update
2019-02-28 22:49:43 -08:00
erwincoumans
4d711ed411
Merge remote-tracking branch 'origin/physx' into physx_clean
2019-02-28 17:52:59 -08:00
erwincoumans
2ae6404d1e
Update UrdfParser.cpp
...
update warning to be more verbose
2019-02-28 17:29:12 -08:00
erwincoumans
893b46ce14
apply mouse_move_multiplier and mouse_wheel_multiplier
2019-02-28 17:13:51 -08:00
Pandhariix
4801425910
Use the correct structure in the PhysicsServerCommandProcessor::processRequestRaycastIntersectionsCommand method
2019-02-28 18:24:32 +01:00
erwincoumans
36a9dcf368
remove src/BulletDynamics/Featherstone/btMultiBodyBlockConstraintSolver.cpp and examples/ConstraintSolvers/* code
...
revert changes to btMultiBodyConstraintSolver/btSequentialImpulseConstraintSolver related to btMultiBodyBlockConstraintSolver
2019-02-27 17:10:17 -08:00
erwincoumans
dfa66864a3
Merge pull request #2130 from erwincoumans/master
...
Expose motor drive torque reporting for motors in spherical joints
2019-02-27 11:53:06 -08:00
erwincoumans
2ae03f50b1
revert to original humanoidMotionCapture.py example. Add a showJointMotorTorques variable (false by default)
2019-02-27 10:01:54 -08:00
erwincoumans
8e1c1448ab
Expose motor drive torque reporting for motors in spherical joints in getJointStateMultiDof.
2019-02-27 09:54:12 -08:00
erwincoumans
d7e087de16
prepare small experiment with block solver
2019-02-26 23:27:05 -08:00
erwincoumans
c44471c38c
preparation for block solver btRigidBody.
2019-02-26 20:24:15 -08:00
erwincoumans
ebc079c32c
Merge pull request #1902 from cloudwu/fixmingwbuild
...
fix mingw build
2019-02-26 10:20:06 -08:00
Erwin Coumans
03e897d1f5
replace deep_mimic policies by versions trained using PyBullet, backflip works better now.
2019-02-24 20:12:18 -08:00
erwincoumans
a9996088c8
Implement PyBullet.getCameraImage for PhysX backend.
...
PhysX backend, allow arbitrary plane normal, a few other fixes.
2019-02-24 14:09:42 -08:00
erwincoumans
9ecc1cc485
Implement CustomProfilerCallback, hooking up to Bullet profiling
...
test dominoes
2019-02-22 09:17:55 -08:00
erwincoumans
71b1191947
texture caching and geometry caching (PhysX) for much faster loading of many same objects, helps benchmarking/comparison.
...
add command-line args for PhysX (numCores=..., solver=tgs, )
2019-02-21 19:24:18 -08:00
erwincoumans
3bf27cf8f2
implement rudimentary contact callback. Does PhysX have a way to report ALL contact points, every frame, so we can update contact forces etc, and report all contacts?
2019-02-20 21:38:37 -08:00
erwincoumans
adf31c8f64
remove PhysXClient.*, it was not needed (use PhysicsDirect instead)
2019-02-20 19:57:10 -08:00
erwincoumans
6d224996ef
update to latest PhysX version.
...
fix handling commands that are not implemented yet
2019-02-20 19:43:23 -08:00
Erwin Coumans
6d2ed912f5
Merge remote-tracking branch 'bp/master'
2019-02-18 19:11:03 -08:00
erwincoumans
33619893c7
fixed failed git merge
2019-02-18 18:34:11 -08:00
erwincoumans
7e5ac33cf1
Merge pull request #2105 from Somedaywilldo/master
...
Add Human3.6M Support for deep_mimic Environment
2019-02-18 18:07:47 -08:00
erwincoumans
bdf9b10246
more work on pybullet_envs.deep_mimic.
...
allow btMultiBody to not wakeup (for some RL experiments)
move deep_mimic motion files to data/motions folder, so we can use the args files unmodified.
2019-02-18 17:57:02 -08:00
erwincoumans
dc8a40f7dc
PyBullet: fix issue with setCollisionFilterGroupMask
2019-02-17 12:02:52 -08:00
Erwin Coumans
80ef56cfca
add missing header
2019-02-15 08:10:24 -08:00
Erwin Coumans
f166ca88ea
Merge remote-tracking branch 'bp/master'
2019-02-13 17:09:27 -08:00
erwincoumans
a38093ad61
deal properly with resize/retina in eglPlugin/eglRendererVisualShapeConverter
2019-02-13 14:43:39 -08:00
erwincoumans
b410e44137
fix path issue with URDF2PhysX.cpp/h
2019-02-13 13:21:50 -08:00
erwincoumans
79a273f644
deep_mimic: add option for spherical joint drive motor, next to stable PD control
...
(existing policies won't work with those motors, needs tuning and re-training)
2019-02-12 20:42:05 -08:00
erwincoumans
e7e46154bb
Merge pull request #2106 from erwincoumans/master
...
fast createMultiBody batch creation, more deep_mimic work
2019-02-12 12:10:10 -08:00
erwincoumans
85ee4c2934
allow batch creation of objects through PyBullet.createMultiBody, see createMultiBodyBatch.py example.
...
expose minGraphicsUpdateTimeMs through PyBullet.connect(p.GUI, options="minGraphicsUpdateTimeMs=32000"), by default OpenGL rendering runs at 4000microseconds intervals.
allow a maximum of 128k objects
fix meshScale for PyBullet.createCollisionShape for custom mesh
expose Pybullet.setPhysicsEngineParameter(minimumSolverIslandSize=...), larger minimum batches group solver constraints together in the same island, to reduce calling overhead (even if they are not related)
2019-02-12 10:36:01 -08:00
Somedaywilldo
59d58ce430
add Human3.6M support for deep_mimic env
2019-02-13 00:13:56 +08:00
Tigran Gasparian
d9e36935e6
Adds extra information about the UserData in the notifications.
...
When using the USER_DATA_ADDED and USER_DATA_REMOVED notifications, some
more information is necessary than just the user data id, especially
when a user data entry has been removed.
2019-02-12 12:02:20 +01:00
bla
a94a24959f
add deep_mimic pre-trained policies
2019-02-11 11:06:15 -08:00
Erwin Coumans
aaae366a21
towards python 2.x support for deep_mimic (still issue with Logger.print2)
2019-02-11 10:03:26 -08:00
Erwin Coumans
786ddec076
disable GUI in deep_mimic, it slows down too much on Mac OSX
2019-02-11 09:44:59 -08:00
Erwin Coumans
30290dfba1
add missing __init__.py for pip
2019-02-11 09:20:44 -08:00
Erwin Coumans
2728294c53
more fixes in deep_mimic env
2019-02-11 09:15:42 -08:00
Erwin Coumans
1bd201eb43
fixes in PyBullet deep_mimic to allow running in pip version
2019-02-11 08:51:07 -08:00
erwincoumans
12e6478689
Merge pull request #2103 from erwincoumans/master
...
PyBullet deep_mimic backflip re-using original DeepMimic policy from Jason Peng
2019-02-11 05:45:21 -08:00
erwincoumans
d4292fdac3
PyBullet deep_mimic fix computeAngVelRel
2019-02-10 21:37:34 -08:00
erwincoumans
bb15800964
add pre-trained backflip policy thanks to Jason Peng from https://github.com/xbpeng/DeepMimic
2019-02-10 21:06:00 -08:00
erwincoumans
be20ed6aa2
remove obsolete deep_mimic files (use the one in deep_mimic/env)
...
add plane_implicit.urdf
2019-02-10 21:04:28 -08:00
erwincoumans
9bddca873c
allow pybullet_envs.deep_mimic.testrl --arg_file run_humanoid3d_backflip_args.txt to perform a backflip. Can only backflip twice, then drops on ground.
...
this deepmimic is still very slow, due to slow mass matrix/inverse dynamics computation. once spherical motor drive is enabled, it should be fast(er)
move pd_controller_stable to pybullet_utils for easier re-use
add plane_transparent.urdf to pybullet_data
allow spacebar in keyboardEvents (Windows for now)
2019-02-10 20:56:31 -08:00
erwincoumans
b574a360f5
Merge pull request #2055 from xantares/pybullet
...
Pybullet enhancements
2019-02-10 20:25:47 -08:00
erwincoumans
28c9ea3aad
PyBullet: add domino asset and example
2019-02-10 19:44:39 -08:00
erwincoumans
054c0b8e58
PyBullet+PhysX backend: expose getJointState reading link position/velocity
2019-02-05 10:24:41 -08:00
erwincoumans
42369aa47d
PyBullet.changeDynamics: expose jointDamping
...
PyBullet: Implement a few more APIs of PhysX backend, resetJointState and setJointMotorControl2
allow useMaximalCoordinate=True for PhysX loadURDF (only for single rigid bodies, articulations require reduced coordinates at the moment)
2019-02-04 21:06:43 -08:00
Erwin Coumans
2eace2f715
update mpi usage
2019-02-01 19:20:08 -08:00
Erwin Coumans
176edeff1e
add mpi_run version (not working yet)
2019-02-01 17:57:31 -08:00
Erwin Coumans
6c42cd3e1b
add policy
2019-02-01 17:45:50 -08:00
Erwin Coumans
1cef924973
deepmimic fix: reference initialization wasn't spread over all frames
2019-02-01 17:18:13 -08:00
Erwin Coumans
7cc2685faf
enable deepmimic training on mac
2019-02-01 16:24:48 -08:00
erwincoumans
63e781b88b
PyBullet env for DeepMimic (preliminary work-in-progress)
2019-01-31 21:32:51 -08:00
erwincoumans
5d871806eb
enable stable PD plugin in premake4.lua PyBullet
...
add a normalize in the setRotation axis/angle to be sure.
Add more code from the DeepMimic project, training doesn't work yet.
2019-01-31 21:31:26 -08:00
erwincoumans
014c68388e
fix createVisualShape.py ray vertical/horizontal and retina scale, fixes Issue 2085
...
fix memory leak in removeBody, fixes issue 2086
2019-01-30 15:29:43 -08:00
Erwin Coumans
b257bd731b
PyBullet: allow createVisualShape to pass vertices, indices, normals and uv coordinates. This can be combined with changeVisualShape to set the texture.
2019-01-29 12:03:11 -08:00
Erwin Coumans
63683e8f02
fix Issue 2039
2019-01-28 16:24:44 -08:00
Erwin Coumans
0818112ede
fix some gym envs
2019-01-28 16:21:52 -08:00
erwincoumans
c97d1041ed
Merge pull request #2037 from araffin/update-gym
...
Update gym envs
2019-01-28 10:14:09 -08:00
Erwin Coumans
0e4d6b0376
tweak premake files for ExampleBrowser, allow non-GUI mode for humanoidMotionCapture
2019-01-28 07:35:57 -08:00
erwincoumans
505cb15600
proto2csv
2019-01-27 12:11:40 -08:00
erwincoumans
6c2568bf5e
PyBullet Minitaur: Fix Minitaur logging (binary file)
...
PyBullet Minitaur: Add minitaur_raibert_controller_example.py
2019-01-27 11:37:35 -08:00
erwincoumans
52c8e14646
deal with 1-DOF and 3-DOF joints separately in resetJointState, fixes Issue 2076
2019-01-26 17:53:10 -08:00
erwincoumans
a6244d714e
more PyBullet PhysX preliminary work.
2019-01-25 10:14:54 -08:00
Erwin Coumans
7df6adb9f8
fix compilation, make travis CI happy
2019-01-23 19:58:19 -08:00
erwincoumans
43d3cdfa38
make Travis CI pass
2019-01-23 19:34:21 -08:00
erwincoumans
66f4b276ec
fix compile issue
2019-01-23 19:25:12 -08:00
erwincoumans
587500dc16
remove auto (no C++11)
2019-01-23 18:23:09 -08:00
erwincoumans
899e3274e8
fix more compile issues
2019-01-23 17:44:49 -08:00
erwincoumans
5da375b93c
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2019-01-23 17:35:55 -08:00
erwincoumans
e637b24237
remove Rand.* and <random> (no C++11)
2019-01-23 17:35:45 -08:00
erwincoumans
03549ca7c6
pass force as array instead of value
2019-01-23 17:24:10 -08:00
Erwin Coumans
a174b42c02
fix compile issues
2019-01-23 16:33:06 -08:00
Erwin Coumans
7b99810e4e
fix case sensitive include header name
2019-01-23 12:50:44 -08:00
erwincoumans
225db2e385
Merge remote-tracking branch 'bp/master'
2019-01-23 08:55:38 -08:00
erwincoumans
e02f82f172
fix some memory leaks in PyBullet.resetJointStateMultiDof and setJointMotorControlMultiDof
...
Fixes Issue 2065
2019-01-23 08:54:17 -08:00
Maxime Busy
b4eca192fb
Parse physicsClientId before calling getPhysicsClient
2019-01-23 12:02:17 +01:00
erwincoumans
ae8e83988b
Add preliminary PhysX 4.0 backend for PyBullet
...
Add inverse dynamics / mass matrix code from DeepMimic, thanks to Xue Bin (Jason) Peng
Add example how to use stable PD control for humanoid with spherical joints (see humanoidMotionCapture.py)
Fix related to TinyRenderer object transforms not updating when using collision filtering
2019-01-22 21:08:37 -08:00
xantares
e793bd22bb
Cancel built time print changes
2019-01-15 10:24:11 +01:00
Michel Zou
fd40544637
On OSX link with dynamic_lookup
2019-01-12 11:36:28 +01:00
Michel Zou
e9112a9f5f
Install examples lib
2019-01-12 11:06:06 +01:00
Michel Zou
46e2d280a8
Print build time only in debug mode
2019-01-11 21:57:41 +01:00
Michel Zou
ea515048e9
OSX Python extension is .so
2019-01-11 21:57:41 +01:00
Michel Zou
04d3b6aee7
Add pybullet install rule
2019-01-11 21:57:38 +01:00
erwincoumans
101429e6a3
Merge pull request #2041 from gsp-27/gsp-27-patch-1
...
Added code for issue #2036
2019-01-04 07:56:14 -08:00
erwincoumans
32282fece0
Merge pull request #2043 from crashcover/NUM_USER_COLLISION_SHAPES
...
initialize m_numUserCollisionShapes correctly for b3InitRemoveBodyCom…
2019-01-04 07:55:26 -08:00
Andreas Daeubler
0fe086cca2
initialize m_numUserCollisionShapes correctly for b3InitRemoveBodyCommand
2019-01-04 08:42:47 +01:00
Erwin Coumans
0963eb3597
malloc -> new
2019-01-03 17:41:21 -08:00
Erwin Coumans
19aafd5221
PyBullet: handle the switch from fixed base to floating base when changing mass from zero to non-zero
2019-01-03 17:35:12 -08:00
Erwin Coumans
bf9efffa4b
Increase mesh allocation for vertices/indices in PyBullet.createCollisionShape
...
See createMesh.py for an example.
The data has to fit in shared memory, hence the limit on Mac is lower than Windows and Linux:
#ifdef __APPLE__
#define B3_MAX_NUM_VERTICES 8192
#define B3_MAX_NUM_INDICES 32768
#else
#define B3_MAX_NUM_VERTICES 131072
#define B3_MAX_NUM_INDICES 524288
#endif
2019-01-03 16:19:28 -08:00
gaurav pathak
7f73081a89
Added code for issue #2036
...
Made necessary changes to ```humanoid_deep_mimic_env.py``` file, setting ```initial_frame``` to new position after simulation steps and setting ```SimTime``` using this new initial frame time
2019-01-03 18:17:08 -05:00
Antonin RAFFIN
f9fdf89c06
Fix indentation
2018-12-31 12:52:43 +01:00
Antonin RAFFIN
1c61b629e3
Fix formating issues
2018-12-31 12:48:42 +01:00
Antonin RAFFIN
0df3527884
Fix gym deprecation warnings
2018-12-28 14:30:05 +01:00
erwincoumans
5e08808e69
Fix issue 1883, OpenGL 2.x doesn't have glGenerateMipmap
2018-12-22 11:42:29 -08:00
erwincoumans
fb2baa81d6
only use the mutex if using BT_THREADSAFE
2018-12-22 11:35:56 -08:00
erwincoumans
9c4136da16
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-12-19 20:15:40 -08:00
erwincoumans
8e8c3fb315
few fixes in inverse dynamics
2018-12-19 20:15:30 -08:00
erwincoumans
78de1f070f
add example comparing explicit PD control (Python), explicit PD control (plugin), position constraint and stable PD control (Python)
2018-12-19 20:12:19 -08:00
Erwin Coumans
e3c03401c8
PyBullet: fixed a few more file leaks
2018-12-04 19:58:24 +01:00
Erwin Coumans
d4db50f668
PyBullet: fix some file leaks.
2018-12-04 19:37:25 +01:00
erwincoumans
69321a9ee6
allow textured cube/sphere from URDF 'box' and 'sphere' visual primitive, when using
...
texUid = p.loadTexture("tex256.png")
p.changeVisualShape(cube ,-1, textureUniqueId = texUid)
See also https://github.com/bulletphysics/bullet3/issues/2012
2018-11-29 15:41:32 -08:00
erwincoumans
dc642c6e65
fix previous commit related to dofcount in inverse dynamics
2018-11-27 19:38:19 -08:00
erwincoumans
192d27743a
enable pybullet.calculateInverseDynamics for floating bodies
...
Using calculateInverseDynamics with zero target acceleration allows to compute the non-linear dynamics forces (coriolis/gyroscopic) and/or gravity force.
2018-11-27 08:49:56 -08:00
Erwin Coumans
2e30a9565b
add humanoid_deepmimic_gym_env.py for HumanoidDeepMimicBulletEnv-v1 (still untested)
2018-11-25 15:33:28 -08:00
Erwin Coumans
fbfa13894b
Merge remote-tracking branch 'bp/master'
2018-11-25 12:58:22 -08:00
erwincoumans
cf48697fcf
PyBullet on Windows: disable harmless warning of not being able to connect to shared memory server.
2018-11-24 11:57:01 -08:00
erwincoumans
bb6f4fb17c
improve the ARS implementation: add multiprocessing Gym environment stepping, add command-line parameters to resume a policy, --render, --movie, --steps, --env
2018-11-24 11:54:36 -08:00
erwincoumans
ca36a82c62
add deepmimic args file (for testing)
...
implement deepmimic reward function (only joint angles/velocities for now)
fix an out-of-date comment, related to contactPoint.m_lateralFrictionInitialized in btSequentialImpulseConstraintSolver.cpp
2018-11-23 18:32:23 -08:00
erwincoumans
5f0dcb575f
add DeepMimic helper utils
2018-11-23 18:01:39 -08:00
erwincoumans
7669fc92c5
add shiftCenterOfMass.py example.
2018-11-23 18:01:00 -08:00
erwincoumans
121cdc91b0
more work on PyBullet implementation of DeepMimic humanoid mimic of motion capture.
...
b3Quaternion, deal with zero-length axis (in axis,angle constructor)
2018-11-21 11:09:10 -08:00
erwincoumans
f93e4e4553
fix mjcf2urdf.py for Python 3 (utf) and don't export visuals (let it auto-convert from collision element)
2018-11-21 11:07:05 -08:00
erwincoumans
41e28e3587
Add link/joint names for DeepMimic humanoid urdf
2018-11-20 21:40:20 -08:00
stolk
5e44dd0c1d
Show btHinge2 oscillation.
2018-11-19 14:47:03 -08:00
Erwin Coumans
bded2968ea
add PyBullet.rotateVector method
...
add missing walk humanoid3d_walk.txt
2018-11-19 10:10:33 -08:00
erwincoumans
f9f8d0fbb0
example for fileIOPlugin.py loading SDF and its assets from a single zipfile,
...
also show how to disable file caching (used in the fileIOPlugin)
2018-11-17 14:11:01 -08:00
erwincoumans
9e99f5cdbc
Expose PyBullet.calculateVelocityQuaternion, getAxisAngleFromQuaternion, getQuaternionFromAxisAngle, getDifferenceQuaternion
...
Add preparation for DeepMimic humanoid environment, replicating parts of https://github.com/xbpeng/DeepMimic
Loading humanoid.urdf and applying motion action: examples/pybullet/gym/pybullet_envs/mimic/humanoid.py
Loading MotionCapture data: examples/pybullet/gym/pybullet_envs/mimic/motion_capture_data.py
Little test: examples/pybullet/gym/pybullet_envs/mimic/humanoid_test.py
2018-11-16 17:29:03 -08:00
erwincoumans
9ad77a220e
Merge pull request #1990 from erwincoumans/master
...
If a convex has called 'initializePolyhedralFeatures', use those feat…
2018-11-13 15:32:05 -08:00
erwincoumans
7c7235a8c5
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-11-13 14:32:38 -08:00
erwincoumans
7dd524075c
Implement btMultiBodySphericalJointMotor, able to track a quaternion position target.
...
Expose this btMultiBodySphericalJointMotor through PyBullet.setJointMotorControlMultiDof
Expose PyBullet.getQuaternionSlerp
Improve PyBullet.setJointMotorControlMultiDof
Improve humanoidMotionCapture.py with slerp and using setJointMotorControlMultiDof
Expose btMultiBody::spatialTransform
Fix btMultiBody::setupPlanar from DeepMimic codebase
Add support for multidof joints in btMultiBody::compTreeLinkVelocities, thanks to DeepMimic codebase @xbpeng
2018-11-13 14:32:18 -08:00
erwincoumans
75d60e1550
Merge pull request #1978 from stolk/master
...
Added Benchmark Demo for packed convex shapes.
2018-11-12 21:51:25 -08:00
erwincoumans
60b9551b38
If a convex has called 'initializePolyhedralFeatures', use those features also to create debug visualizer mesh, to avoid showing penetration.
...
Avoid crash in InvertedPendulumPDControl, due to recent change in m_jointFeedbackInWorldSpace
2018-11-12 21:46:11 -08:00
erwincoumans
a06b5de7b6
add converted humanoid from DeepMimic ( https://github.com/xbpeng/DeepMimic ,
...
thanks to Jason Peng), and motion capture playback example.
See also https://www.youtube.com/watch?v=vw3EKnKrgqw
2018-11-11 20:15:47 -08:00
erwincoumans
0b2142414d
fix usage of btMultiBody::setJointPosMultiDof/setJointVelMultiDof
2018-11-11 19:04:07 -08:00
erwincoumans
17219f84c6
make setJointPosMultiDof and setJointVelMultiDof argument const.
...
add PyBullet.resetJointStateMultiDof / getJointStateMultiDof, for preliminary support for spherical and planar joints
2018-11-10 14:26:31 -08:00
stolk
fe07b0da9d
Merge remote-tracking branch 'upstream/master'
2018-11-09 16:05:25 -08:00
erwincoumans
642c6a71d2
fix 2 potential data race conditions.
2018-11-08 14:41:22 -08:00
erwincoumans
49b098854e
PyBullet: avoid calling syncBodies for each DOF in pdControl.
...
Allow PD_CONTROL in setJointMotorControlArray.
2018-11-07 09:29:19 -08:00
Erwin Coumans
882252f8c0
move global from btMultiBody into dynamicsWorld.getSolverInfo
2018-11-05 10:50:03 -08:00
Erwin Coumans
ac18c95ea1
fix some race conditions
2018-11-05 10:04:19 -08:00
Erwin Coumans
8b53e47fe8
add simpler ARS implementation, thanks to Alexis Jacq and Hadelin de Ponteves
...
(will add save/restore of policy and rendering movies through command-line arguments soon)
2018-11-02 11:19:46 -07:00
stolk
464100168f
Added Benchmark Demo for packed convex shapes.
2018-11-02 10:13:08 -07:00
Erwin Coumans
f6ea2a7379
fix a potential data race condition.
...
remove createObstacleCourse programmatic creation part until we can steam vertices/indices.
2018-11-01 10:20:54 -07:00
erwincoumans
750133694c
Disable btQuickprof.h profiling by default. We use custom profiling functions, see b3ChromeUtilsStartTimings.
2018-11-01 08:19:50 -07:00
Erwin Coumans
438e082b33
PyBullet: remove a potential race condition
2018-11-01 07:27:37 -07:00
Erwin Coumans
9e58a21732
more aesthetic wireframe, pure visual improvement (no impact on simulation/performance)
...
fixes https://github.com/bulletphysics/bullet3/issues/1970
Issue 1970
2018-10-31 21:50:49 -07:00
Erwin Coumans
131535a99f
remove debug stats
2018-10-31 21:24:44 -07:00
Erwin Coumans
8e82de1b00
add rudimentary MuJoCo mjcf xml to ROS URDF file, based on
...
pybullet_utils.urdfEditor
2018-10-31 11:02:19 -07:00
Erwin Coumans
47b8b98a64
PyBullet: call the right method (although equivalent at the moment)
2018-10-30 22:16:13 -07:00
Erwin Coumans
44976780fa
remove ARS files
2018-10-29 19:23:54 -07:00
Erwin Coumans
c2b9dc9361
update to CartPoleBulletEnv-v1 and check with latest baselines v0.1.5, works fine.
...
(make it more similar to classical control cartpole)
2018-10-29 16:44:12 -07:00
Erwin Coumans
2fa0ae9349
fix sprintf using nullptr string
2018-10-29 13:45:42 -07:00
erwincoumans
c80e2816ad
PyBullet: Use fileIOPlugin in processRestoreStateCommand
...
PyBullet: Report debug information in case of failure in restoreState.
2018-10-29 12:08:34 -07:00
erwincoumans
35790c36c2
fix renamed variable m_rootPath->m_pathPrefix
2018-10-29 10:56:55 -07:00
erwincoumans
078887c4d7
PyBullet fileIOPlugin: don't add equal fileIO interface twice (based on identical fileIOType and pathPrefix)
...
loadBullet goes through fileIOPlugin
2018-10-29 10:25:40 -07:00
erwincoumans
ee76873689
eglPlugin: remove visual shape for removeBody.
2018-10-28 21:08:57 -07:00
erwincoumans
df9b4fb005
remove printf from demo
2018-10-27 11:56:04 -07:00
Erwin Coumans
bebe12d6d8
tweak tensorflow humanoid_running.py demo to be more robust against mouse dragging
...
(mouse dragging adds energy in the system that can cause explosions/instability):
use solverResidualThreshold and increase number of sub steps, also clamp the max force.
2018-10-27 11:48:21 -07:00
erwincoumans
a4cab78dd0
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-10-27 11:38:56 -07:00
erwincoumans
bdda7af8d7
Use the kF_UseGjkConvexCastRaytest for more accurate picking
...
fix upAxis in some demos
2018-10-27 11:38:38 -07:00
Erwin Coumans
0511a36a67
add Laikago quadruped model, thanks to Unitree for the cad meshes.
...
If you use the Laikago URDF, please add a citation to PyBullet:
@MISC{coumans2018,
author = {Erwin Coumans and Yunfei Bai},
title = {PyBullet, a Python module for physics simulation for games, robotics and machine learning},
howpublished = {\url{http://pybullet.org }},
year = {2016--2018}
}
2018-10-26 18:49:58 -07:00
erwincoumans
a44df2b0a6
PyBullet: allow to pass vertices (for convex) and vertices+indices (for concave) to createCollisionShape
...
See createObstacleCourse.py for an example use. At the moment a limit of 1024 vertices and 1024 indices.
Will be lifted once we implement the streaming version (soon).
2018-10-26 10:18:51 -07:00
erwincoumans
707bac9c3d
fix sphere sdf parsing
2018-10-22 16:01:58 -07:00
Erwin Coumans
84870739af
Merge remote-tracking branch 'bp/master'
2018-10-22 08:03:47 -07:00
Erwin Coumans
a198459b09
reduce back to 128, some internal build has too limited stack size.
2018-10-22 07:40:45 -07:00
Tigran Gasparian
6512a67422
Uses btCollisionBody::isActive instead of btMultiBody::isAwake to
...
determine whether to send transform changed notifications.
2018-10-22 14:06:58 +02:00
erwincoumans
c291fe5584
PyBullet/BulletRobotics: increase max #degree of freedom from 128 to 256.
2018-10-21 20:05:29 -07:00
erwincoumans
04101565bc
Merge pull request #1944 from erwincoumans/master
...
revert backward compabitility in API
2018-10-20 20:45:48 -07:00
Erwin Coumans
2d224cf319
revert backward compabitility in API
2018-10-20 19:44:39 -07:00
erwincoumans
df0889a450
Merge pull request #1943 from erwincoumans/master
...
fix PyBullet.changeVisualShape to allow clearing a texture (use -1 for textureUniqueId)
2018-10-20 17:45:20 -07:00
erwincoumans
01a8a36933
fix example
2018-10-20 16:13:48 -07:00
erwincoumans
ed49edc1af
PyBullet change API (since it was broken): pybullet_changeVisualShape with textureUniqueId ==-1 will clear the texture
...
b3InitUpdateVisualShape doesn't take textureUniqueId by default. new API b3UpdateVisualShapeTexture to change texture (-1 will clear texture)
PyBullet/BulletRobotics: allow to reset the textureUniqueId to -1, to clear a texture
PyBullet/BulletRobotics: save all texture handles
2018-10-20 15:56:56 -07:00
Erwin Coumans
9a9386b6a7
allow empty filename in CNS fileIO
2018-10-20 14:16:31 -07:00
erwincoumans
3d01a8c098
Merge pull request #1942 from erwincoumans/master
...
add missing file in MANIFEST.in, fix potential memory leak in InMemoryFileIO, bump up PyBullet version
2018-10-20 12:25:50 -07:00
erwincoumans
63784dab5f
Update NN3DWalkersTimeWarpBase.h
...
Fix issue #1940 , see https://github.com/bulletphysics/bullet3/issues/1940
2018-10-17 20:08:06 -07:00
erwincoumans
399ff55153
fix typo in previous commit
2018-10-16 19:02:12 -07:00
erwincoumans
8825b39f6c
fix potential memory leak in previous commit related to InMemoryFileIO class.
2018-10-16 18:31:17 -07:00
erwincoumans
b0a3b1b962
add missing header <string.h>
2018-10-14 15:12:53 -07:00
erwincoumans
b5e475aec3
enable planar reflection in MinitaurGymEnv
...
enable follow cam in other Gym locomotion environments
add testing assets for multi-material obj files -> sdf conversion.
Also use ER_NO_SEGMENTATION_MASK flag for TinyRenderer/EGL plugin renderer
2018-10-14 15:10:19 -07:00
erwincoumans
c1e20c448f
Implement InMemoryFile for memory caching for fileIO plugin.
...
Support SDF loading through fileIO plugin.
Replace strcspn by C code (not crossplatform)
Add flag for loadURDF to use color from MTL file (instead from URDF link material)
pybullet.URDF_USE_MATERIAL_COLORS_FROM_MTL and pybullet.URDF_USE_MATERIAL_TRANSPARANCY_FROM_MTL
2018-10-14 12:54:34 -07:00
erwincoumans
3309ce8f6a
strip \r \n from line
2018-10-13 16:23:58 -07:00
Erwin Coumans
fd3d292fcf
tinyRenderer, remove both \r and \n, not just \n
2018-10-13 11:46:46 -07:00
erwincoumans
ad10da57c5
more initial work on fileIOPlugin
2018-10-11 17:00:17 -07:00
erwincoumans
a24c1436af
state 2 of FileIO plugin: adding/removing FileIO types, search through all registered FileIO types.
...
(not enabled by default yet)
Example:
fileIO = p.loadPlugin("fileIOPlugin")
print("fileIO=",fileIO)
p.executePluginCommand(fileIO,"e:/develop/bullet3/data/plane.zip", [p.AddFileIOAction,p.ZipFileIO])
p.executePluginCommand(fileIO,"e:/develop/bullet3/data/test2.zip", [p.AddFileIOAction,p.ZipFileIO])
planeId = p.loadURDF("plane.urdf")
duckId = p.loadURDF("duck_vhacd.urdf",[0,0,1])
2018-10-11 14:39:31 -07:00
erwincoumans
f792a5951a
move zipfFileIO into own header
...
route loadTextureFile from fileIO plugin
fix B3_ENABLE_FILEIO_PLUGIN logic
2018-10-11 10:58:14 -07:00
erwincoumans
bb305c6ebc
allow to provide rayCastBatch in local 'from'/'to' with a parent/link index, b3RaycastBatchSetParentObject
...
If parentObjectUniqueId provided, convert local from/to into world space coordinates
AddUserDebugLins: don't block when replacing an item
Fix examples/pybullet/examples/inverse_kinematics.py
2018-10-10 23:31:50 -07:00
Erwin Coumans
32b5c88d4b
close the fileIO for urdf loading
2018-10-09 20:45:17 -07:00
Erwin Coumans
5f954e2496
backward compatibility fix
2018-10-09 16:25:32 -07:00
Erwin Coumans
74fca2418b
fix egl plugin build, with fileIO changes
2018-10-09 08:00:31 -07:00
Erwin Coumans
295732149f
add missing stdio.h
2018-10-09 07:01:02 -07:00
erwincoumans
dba239fe8d
First pass of load files through an interface (to allow loading from memory, zip file etc). So instead of posix fopen/fread, using CommonFileIOInterface.
...
A fileIO plugin can override custom file IO operations. As a small test, load files from a zipfile in memory.
Default fileIO implementation is in examples/Utils/b3BulletDefaultFileIO.h
Affects URDF, SDF, MJCF, Wavefront OBJ, STL, DAE, images.
2018-10-08 21:27:08 -07:00
erwincoumans
a1543714f1
Merge pull request #1919 from erwincoumans/master
...
btMultiBody: fix indexing issue causing wrong friction to be reported, remove obsolete BT_PYBULLET_GRPC and PYBULLET_EGL
2018-10-06 19:02:09 -07:00
erwincoumans
c2486bb1a6
add contactFriction.py example
2018-10-06 15:27:56 -07:00
erwincoumans
c0e38cd921
Merge pull request #1896 from jviereck/jviereck_add_lateral_contact_info
...
Adding support for lateral friction to getContactPoints()
2018-10-06 15:27:14 -07:00
Erwin Coumans
da2ee638ef
remove obsolete BT_PYBULLET_GRPC and PYBULLET_EGL
2018-10-05 21:47:13 -07:00
bla
83c3094086
Merge remote-tracking branch 'bp/master'
2018-10-05 19:42:26 -07:00
Erwin Coumans
90f002e07d
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-10-05 19:41:10 -07:00
Erwin Coumans
8a0d96edce
tweaks in pybullet/examples for Mac OSX
2018-10-05 19:40:52 -07:00
erwincoumans
9a7cc7bcd7
add getCameraImageTest.py to compare GUI (with OpenGL3 GLInstancingRenderer), TinyRenderer and DIRECT+eglPlugin (with OpenGL3 GLInstancingRenderer)
2018-10-05 19:31:03 -07:00
erwincoumans
2c13e70d1a
make projective textures work in DIRECT+eglPlugin (see examples/pybullet/examples/projective_texture.py)
2018-10-05 19:24:44 -07:00
erwincoumans
111ffc784d
Use 2560x2048 as default window/framebuffer size for eglPlugin.
2018-10-05 18:28:37 -07:00
erwincoumans
40d7e292f2
fix depth image for eglPlugin, also fix setRGBA color for eglPlugin.
2018-10-05 18:25:51 -07:00
erwincoumans
67954a873e
Merge pull request #1917 from erwincoumans/master
...
reverse ER_SEGMENTATION_MASK to ER_NO_SEGMENTATION_MASK so segmentation
2018-10-04 18:41:16 -07:00
Erwin Coumans
24ca5afe95
reverse ER_SEGMENTATION_MASK to ER_NO_SEGMENTATION_MASK so segmentation
...
mask is rendered by default
2018-10-04 14:14:24 -07:00
Wenlong Lu
24f5b819cf
fix a memory leak
2018-10-02 10:58:23 -07:00
erwincoumans
8aff1fbd49
removed flags from loadURDF command. The flags are already available in m_data->m_flags in BulletUrdfImporter.cpp
2018-10-02 08:39:47 -07:00
bla
0f8b8388a6
eglPlugin, one more fix, remove graphics instances at resetAll
2018-10-02 08:13:51 -07:00
erwincoumans
da37f1d559
add glViewport after call to startRendering (some renderers call glViewport)
2018-10-02 07:49:13 -07:00
erwincoumans
c9bd997acf
Merge pull request #1910 from WenlongLu/create_status
...
Two minor updates for PhysicsServerCommandProcessor
2018-10-01 18:53:13 -07:00
bla
7cd962467e
fix EGL issue related to glViewport in startRender method
2018-10-01 18:51:02 -07:00
Wenlong Lu
085984f003
update complete status for removing collision shape
2018-10-01 17:54:23 -07:00
Wenlong Lu
167520a5e6
pass plane constant
2018-10-01 17:38:24 -07:00
erwincoumans
bfafd9b0ae
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-30 20:02:32 -07:00
erwincoumans
6d89413336
scaling striding is 4 (scaling+object uid) instead of 3, also for transparent objects
2018-09-30 20:02:12 -07:00
erwincoumans
0ffa9a97bd
scaling striding is 4 (scaling+object uid) instead of 3, also for transparent objects
2018-09-30 19:52:19 -07:00
Erwin Coumans
42ae4e81a8
apply clang-format (on Mac, slightly different than running it on Windows)
2018-09-30 11:43:57 -07:00
erwincoumans
5bcd43711a
PyBullet OpenGL/EGL hardware getCameraImage: use glViewport to reduce the glReadPixels calling cost dramatically for small images
...
PyBullet Allow OpenGL/EGL hardware to render segmentation mask. Use pybullet.ER_SEGMENTATION_MASK_OBJECT_AND_LINKINDEX or pybullet.ER_SEGMENTATION_MASK
PyBullet.removeBody fix indexing bug (use foundIndex, not i)
PyBullet bump up version to 2.2.3
2018-09-30 07:10:40 -07:00
erwincoumans
254edb61cb
Merge remote-tracking branch 'bp/master'
2018-09-29 10:35:01 -07:00
erwincoumans
00ed0dce24
Merge pull request #1900 from crewmatt/master
...
Update URDF Importer to process Sensor elements.
2018-09-28 17:06:27 -07:00
erwincoumans
39bca74041
Merge remote-tracking branch 'bp/master'
2018-09-28 10:14:45 -07:00
mbennice
6655bd60c8
Update stb_image.h import
2018-09-27 14:09:00 -07:00
mbennice
99dbedab6e
Update import
2018-09-27 12:49:39 -07:00
mbennice
7485999254
Clang Format Change
2018-09-27 10:00:39 -07:00
mbennice
30d4c4136a
Piping through the flag to parse sensors
2018-09-27 09:49:59 -07:00
Cloud Wu
8ff4b5187a
fix mingw build
2018-09-27 11:48:12 +08:00
Wenlong Lu
8cdb514ffb
missed one
2018-09-26 17:46:39 -07:00
Wenlong Lu
2681f5cd9f
add const qualifiers to all double* inputs in PhysicsClientC_API
2018-09-26 17:24:40 -07:00
mbennice
173cc2538f
Correct header update
...
Revert the header update change.
2018-09-26 16:38:59 -07:00
mbennice
f79b04357f
Update URDF Importer to process sensor elements.
...
Update the URDF Importer to add sensors as 0 mass 0 inertia elements
attached by a fixed joint. This way their states can be read as links.
2018-09-26 16:35:22 -07:00
Wenlong Lu
3c0e57e025
add const qualifier to double [] inputs
2018-09-26 15:02:22 -07:00
Erwin Coumans
cd2f111a10
update pybullet version, include *.* from OpenGLWindow
2018-09-25 17:06:32 -07:00
Erwin Coumans
f20b7bb07c
tweak pole IK demo
2018-09-25 06:22:06 +00:00
erwincoumans
c1ba89a01c
Fix eglPlugin
2018-09-24 08:06:28 -07:00
Julian Viereck
219dfc757a
Adding support for lateral friction to getContactPoints()
2018-09-24 10:03:43 -04:00
erwincoumans
ab8f16961e
Code-style consistency improvement:
...
Apply clang-format-all.sh using the _clang-format file through all the cpp/.h files.
make sure not to apply it to certain serialization structures, since some parser expects the * as part of the name, instead of type.
This commit contains no other changes aside from adding and applying clang-format-all.sh
2018-09-23 14:17:31 -07:00
erwincoumans
b73b05e9fb
add getClosestPoints.py example.
...
allow to perform a getClosestPoints query with a collisionShape and world transform (position, orientation) that isn't part of the world.
(use createCollisionShape to create it)
add optional removeCollisionShape, for collision shapes only used in a query (and not used to create a body)
2018-09-22 14:18:21 -07:00
erwincoumans
cdf8c908ad
add getClosestPoints.py example.
...
allow to perform a getClosestPoints query with a collisionShape and world transform (position, orientation) that isn't part of the world.
(use createCollisionShape to create it)
2018-09-22 13:17:09 -07:00
erwincoumans
64a7a3d82f
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-21 17:33:31 -07:00
erwincoumans
278454ae17
allow to disable self-collision for a link-pair
2018-09-21 17:33:13 -07:00
Erwin Coumans
350adb5c7c
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-21 09:56:25 -07:00
Erwin Coumans
47efe66017
disable eglPlugin from setup.py / pip pybullet on Windows and Mac (only enable on Linux)
2018-09-21 09:55:57 -07:00
erwincoumans
1ec616362c
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-20 09:08:46 -07:00
erwincoumans
616192f80a
use grpc port -1 by default in PyBullet. add grpcClient.py and grpcServer.py
2018-09-20 09:07:47 -07:00
Erwin Coumans
0de99f224a
fix compilation on ARM (Ubuntu 18.04, NVIDIA Xavier)
2018-09-19 16:18:06 -07:00
erwincoumans
0b08881ab8
wait until a frame is rendered, when using the COV_ENABLE_SINGLE_STEP_RENDERING command (Windows and Linux only)
2018-09-15 14:22:31 -07:00
erwincoumans
81f6a63490
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-14 17:17:20 -07:00
erwincoumans
e6d74580c1
add single step rendering feature:
...
while (1):
stepSimulation()
pybullet.configureDebugVisualizer(pybullet.COV_ENABLE_SINGLE_STEP_RENDERING, 1)
disable single step using
pybullet.configureDebugVisualizer(pybullet.COV_ENABLE_SINGLE_STEP_RENDERING, 0)
2018-09-14 17:17:11 -07:00
Erwin Coumans
b0971b4beb
fix our internal build
2018-09-13 10:20:38 -07:00
Erwin Coumans
d909448ee3
bump up pybullet version again
2018-09-12 21:03:07 -07:00
erwincoumans
9553892770
PyBullet / BulletRobotics:
...
Implement collisionFilterPlugin, use setCollisionFilterPair to enable or disable collision detection between specific pairs of objects.
Also, expose setCollisionFilterGroupMask as PyBullet API and in urdf using the tag <collision group="1" mask="2"/>.
See examples/pybullet/examples/collisionFilter.py for an example.
PyBullet default: Lower the warmstarting factor, for maximal coordinates rigid bodies for more stable simulation.
Add btCollisionWorld::refreshBroadphaseProxy to easier recreate the broadphase proxy without adding/removing objects to the world.
2018-09-12 19:30:49 -07:00
erwincoumans
bf3399d0e3
Merge remote-tracking branch 'bp/master'
2018-09-12 09:18:25 -07:00
Erwin Coumans
1efee29c27
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-12 08:20:03 -07:00
Erwin Coumans
c83fa30daa
use numpy to reshape image data to matplotlib compatible format
...
fixes issue #1871
2018-09-12 08:19:30 -07:00
erwincoumans
2a3a60ac64
Merge pull request #1874 from erwincoumans/master
...
more egl plugin fixes, create stb_image_write.cpp (instead of magic defines in various source files)
2018-09-11 14:14:40 -07:00
Erwin Coumans
23ecbab7b3
fix setup.py and pybullet to work better with eglPlugin on Linux
2018-09-11 13:24:35 -07:00
Tigran Gasparian
58699258dd
Change b3GetLinkState to use numLinks in status handle
...
Changes the b3GetLinkState function to use numLinks from the
SharedMemoryStatus returned from RequestActualState instead of the
cached number of link value returned by b3GetNumJoints.
The cached value can be outdated when a new body is added and
SyncBodyInfo isn't used, while using the value in the status is always
up-to-date.
2018-09-11 14:44:06 +02:00
erwincoumans
5b1588fc3f
fix createProtobufs.bat script
2018-09-10 23:32:51 -07:00
Erwin Coumans
9fa3e44539
fixes related to egl plugin
2018-09-10 23:31:54 -07:00
Erwin Coumans
3b0a44e1be
fix createProtobufs.sh script
2018-09-10 23:24:00 -07:00
erwincoumans
684a9f6a99
move stb_image/stb_image_write.cpp into a cpp file instead of random files with the magic 'STB_IMAGE_WRITE_IMPLEMENTATION' define
...
move setup.py back to eglRenderer extension, use pkgutil.get_loader('eglRenderer').get_filename()
disable dlmopen by default, unless B3_USE_DLMOPEN is defined.
2018-09-10 23:18:34 -07:00
Erwin Coumans
f26d4fdc4c
pybullet eglPlugin: fix Mac OSX build
2018-09-10 08:55:47 -07:00
bla
6992195ba8
add pybullet example for eglRendererPlugin, will use EGL in a plugin on Linux, Win32OpenGLWindow in a plugin on Windows
2018-09-09 23:03:07 -07:00
bla
8f711462e0
fix setup.py to work better on Windows and Linux (with default eglPlugin static built-in,
...
just use pybullet.loadPlugin("eglRendererPlugin") before loading/creating any objects.
use end/startRendering (swap buffers) before the rendering in the eglPlugin
2018-09-09 22:58:08 -07:00
erwincoumans
9698c3d600
PyBullet setup.py: only enable BT_USE_EGL on Linux, but allow to run the eglPlugin on Windows and Mac as well (using their default opengl window).
...
postpone the 'loadPlugin' for static eglPlugin, so that the init and exit happen in the same thread.
When you don't call unloadPlugin, the program may crash when exiting in SHARED_MEMORY_SERVER mode.
2018-09-09 21:08:47 -07:00
erwincoumans
7369005402
pybullet, use eglPlugin statically instead of dynamic loading an Extension -DSTATIC_EGLRENDERER_PLUGIN
...
Fix compile errors of pybullet on Windows.
2018-09-09 15:23:26 -07:00
erwincoumans
adb5c049c7
Thanks to @dchichkov for some of the fixes in the eglRendererPlugin!
...
Rename tinyRenderer -> eglRenderer in the eglRendererPlugin.
Allow to run the eglRendererPlugin to run on Windows (not in EGL mode but Win32OpenGLWindow mode)
Here is a script I tested on Windows:
~~~~~~~~~~~~
mport pybullet as p
import time
p.connect(p.DIRECT)
plugin = p.loadPlugin("e:/develop/bullet3/bin/pybullet_eglRendererPlugin_vs2010_x64_debug.dll","_eglRendererPlugin")
print("plugin=",plugin)
p.setGravity(0,0,-10)
p.loadURDF("plane.urdf",[0,0,-1])
p.loadURDF("r2d2.urdf")
pixelWidth = 320
pixelHeight = 220
while (1):
p.stepSimulation()
viewMatrix = [1.0, 0.0, -0.0, 0.0, -0.0, 0.1736481785774231, -0.9848078489303589, 0.0, 0.0, 0.9848078489303589, 0.1736481785774231, 0.0, -0.0, -5.960464477539063e-08, -4.0, 1.0]
projectionMatrix = [1.0825318098068237, 0.0, 0.0, 0.0, 0.0, 1.732050895690918, 0.0, 0.0, 0.0, 0.0, -1.0002000331878662, -1.0, 0.0, 0.0, -0.020002000033855438, 0.0]
#img_arr = p.getCameraImage(pixelWidth, pixelHeight, viewMatrix,projectionMatrix, shadow=1,lightDirection=[1,1,1])#,renderer=pybullet.ER_BULLET_HARDWARE_OPENGL)
img_arr = p.getCameraImage(pixelWidth, pixelHeight, shadow=1,lightDirection=[1,1,1])#,renderer=pybullet.ER_BULLET_HARDWARE_OPENGL)
#print("img_arr=",img_arr)
time.sleep(1)
~~~~~~~~~~~~~
2018-09-09 13:37:49 -07:00
erwincoumans
dc7feb9027
Merge remote-tracking branch 'bp/master'
2018-09-09 10:48:58 -07:00
erwincoumans
233a7083d1
Merge pull request #1790 from BlGene/egl-plugin
...
OpenGL render plugin
2018-09-09 09:27:15 -07:00
Joshua Aduol
cc4c02edc7
Fixed bugs mistaking forearm_roll_joint for upper_arm_roll_joint
2018-09-09 00:17:06 +01:00
erwincoumans
63f4a63e15
since parent collision is always disabled by default for self-collision, we add a new flag
...
URDF_USE_SELF_COLLISION_INCLUDE_PARENT, to force self-collision between direct parent/child (not recommended in general)
2018-09-08 14:46:43 -07:00
Erwin Coumans
7376c26e4b
remove gl libs from openvr
2018-09-07 16:06:42 -07:00
erwincoumans
5164f2f9a7
remove pre-build proto/grpc files (they differ for each platform and proto/grpc version)
2018-09-07 15:44:33 -07:00
erwincoumans
0efc67841d
allow pybullet to connect to GRPC server. (need to use flag --enable_grpc in premake build system)
...
add grpcPlugin, it can work in GUI, SHARED_MEMORY_SERVER, DIRECT and other modes.
example script to start server from pybullet:
import pybullet as p
p.connect(p.GUI)
#if statically linked plugin
id = p.loadPlugin("grpcPlugin")
#dynamics loading the plugin
#id = p.loadPlugin("E:/develop/bullet3/bin/pybullet_grpcPlugin_vs2010_x64_debug.dll", postFix="_grpcPlugin")
#start the GRPC server at hostname, port
if (id>=0):
p.executePluginCommand(id, "localhost:1234")
Only in DIRECT mode, since there is no 'ping' you need to call to handle RCPs:
numRPC = 10
while (1):
p.executePluginCommand(id, intArgs=[numRPC])
2018-09-05 17:58:14 -07:00
Erwin Coumans
31b06f508a
only add notifications if there is a plugin that needs them
...
call the 'reportNotifications' in GRPC server main
2018-09-04 19:24:31 -07:00
Erwin Coumans
18b782847d
make GRPC work on Linux,
2018-09-04 16:56:34 -07:00
Erwin Coumans
51f9a6fd0d
make grpc work on Mac OSX with premake
2018-09-04 14:49:12 -07:00
erwincoumans
710e660763
Merge pull request #1855 from erwincoumans/master
...
more work on grpc/proto/pybullet.proto
2018-09-04 12:11:03 -07:00
erwincoumans
c4842220a8
Merge pull request #1852 from RanTig/remove-visual-shape
...
Removes visual shape data when a body gets removed.
2018-09-04 09:42:48 -07:00
erwincoumans
9b66074949
add some missing GRPC files
2018-09-04 09:10:57 -07:00
erwincoumans
9e2f6c7935
more GRPC work
2018-09-03 23:13:15 -07:00
Tigran Gasparian
a670041793
Small fix in executePluginCommand, now you can pass int arguments while keeping floats null without errors.
2018-09-03 10:41:38 +02:00
Tigran Gasparian
93145f3979
Adding space to make compiler happy.
2018-09-03 10:37:22 +02:00
erwincoumans
23e84ca9b6
more work on proto/pybullet.proto
2018-09-01 13:49:56 -07:00
Tigran Gasparian
9799f356de
.
2018-08-31 15:35:35 +02:00
Tigran Gasparian
f132b4d16b
Only make the change for Linux, since OSX doesn't have dlmopen()
2018-08-31 15:33:08 +02:00
Tigran Gasparian
c062bfc2d5
Removes visual shape data when a body gets removed.
...
Problem description:
When you add a body, remove it and then add a new
body, the body id may be reused by Bullet.
Because the visual shape data was not being removed when a body was
removed, requesting the visual shape data for a 'recycled' body id
results in both the visual shape data of the new body as well as the old
one.
Removing the visual shape data when the body gets removed fixes this.
Changes the btAlignedObjectArray for visual shapes to a hashmap, so
that removing is faster. Additionally, functions like getNumVisualShape
don't perform a linear search anymore.
2018-08-31 15:12:28 +02:00
Tigran Gasparian
6036c027bf
Uses dlmopen() instead of dlopen() in b3PluginManager.cpp. This allows plugins to be loaded in a separate namespace, avoiding symbol conflicts.
2018-08-31 10:53:46 +02:00
Erwin Coumans
40a15053bd
add createProtobufs.sh script for Mac/Linux (only tested on Mac so far)
2018-08-30 10:09:00 -07:00
Max Argus
425ecbd3e6
fix cmake, linux only (patch egl)
2018-08-30 13:24:25 +02:00
Max Argus
964a5116eb
fix cmake + apple (patch egl)
2018-08-30 13:24:25 +02:00
Max Argus
902818894c
fix cmake (patch egl)
2018-08-30 13:24:25 +02:00
Max Argus
c1d6c6b07d
clean test scripts
2018-08-30 13:24:25 +02:00
Max Argus
bdc0f82a8b
added syncronized render test script
2018-08-30 13:24:25 +02:00
Max Argus
e15fb0866c
rendertest + parallel pip + no debug for plugin
2018-08-30 13:24:25 +02:00
Max Argus
35b30359e3
nearly working
2018-08-30 13:24:25 +02:00