Commit Graph

878 Commits

Author SHA1 Message Date
Erwin Coumans
d81d62a70b Prepare for Bullet 2.86 release, update version to 2.86 (release will be tagged soon)
protect some C-API methods against negative dof indices
add triangle mesh import from MJCF files
update to recent pybullet quickstart guide pdf
2017-01-20 11:48:33 -08:00
erwincoumans
394196e5a2 Update PhysicsServerExample.cpp 2017-01-17 17:38:30 -08:00
Erwin Coumans
52761f5578 [pybullet] implement addUserDebugParameter / readUserDebugParameter
fix inertial frame for door.urdf
allow picking of links of multi-bodies with a fixed base
2017-01-17 15:42:32 -08:00
Erwin Coumans
966ebb04fe set the paircache filter 2017-01-16 21:04:02 -08:00
Erwin Coumans
12a391e1f9 [pybullet] expose collision filter mode and max constraint force:
pybullet.changeUserConstraint(maxForce=<double>)
pybullet.setPhysicsEngineParameter(collisionFilterMode=<int>)
2017-01-16 18:17:18 -08:00
Erwin Coumans
93471a1c31 cmake Win32 fixes
fixed some more warnings
added alignment macros to some classes
btPersistentManifold from 128 to 16 bytes aligned
prepare command to select collision filter mode (SIM_PARAM_UPDATE_COLLISION_FILTER_MODE)
2017-01-16 13:05:26 -08:00
Erwin Coumans
3dfcd27147 upgrade to latest stb_image from
7e989db555
2017-01-16 11:37:44 -08:00
Erwin Coumans
3d985ff7a5 add App_SharedMemoryPhysics and App_SharedMemoryPhysics_GUI to cmake
fix 'connection' detection for shared memory (due to multiple shmem blocks)
add link to pybullet.so
2017-01-16 11:17:32 -08:00
Erwin Coumans
8e9181f85c [MJCF import] add custom broadphase collision filter, for MJCF/MuJoCo compatibility
[MJCF import] improve MuJoCo importer, support collision filters
fixed a few more warnings
2017-01-16 08:23:49 -08:00
Erwin Coumans
c0c4c8ba3f fix many warnings
remove btMultiSapBroadphase.*
make collisionFilterGroup/collisionFilterMark int (instead of short int)
2017-01-15 22:26:11 -08:00
Erwin Coumans
e3df00d5f1 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-01-15 11:22:38 -08:00
Erwin Coumans
310fabcd7e Further improvements in Bullet MuJoCo MJCF import:
[MJCF import] improved humanoid.xml, inverted_pendulum.xml import (automatically add dummy-links to connect multiple joints between bodies)
[MJCF import] fix bug in quaternion conversion (w,x,y,z) -> (x,y,z,w)
2017-01-15 11:22:24 -08:00
erwin coumans
8a6e40ff95 add --disable_desktop_gl for Virtual Reality server (App_SharedMemoryPhysics_VR)
(making the VR performance much better on lowish-quality GPU hardware)
2017-01-14 08:05:04 -08:00
Erwin Coumans
7b7d897e3b explicitly mark dead code 2017-01-12 12:29:15 -08:00
Erwin Coumans
a93704889c add a default empty implementation for a few pure virtual calls
(in interface classes) for backward compatibility in some code base
2017-01-12 11:40:43 -08:00
Erwin Coumans
9aa5a839d5 add pybullet.changeConstraint / b3InitChangeUserConstraintCommand/ b3InitChangeUserConstraintSetPivotInB /b3InitChangeUserConstraintSetFrameInB command, to change an existing user constraint.
add constraint.py example.
allow pybullet.createConstraint to create user constraint without a child body ('fixed' to the world)
2017-01-12 10:30:46 -08:00
Erwin Coumans
1c79798583 make sure threads will get out of 'workerThreadWait' so they can exit at the end 2017-01-12 08:06:40 -08:00
Erwin Coumans
8caea20425 small tweak in inverse_kinematics.py example, to make it run better on OSX 2017-01-11 21:57:02 -08:00
Erwin Coumans
4897139dad pybullet.calculateInverseKinematics: expose null space method with and without orientation
add inverse_kinematics.py and hello_pybullet.py pybullet examples
add m_worldLinkFramePosition/Orientation fields to b3LinkState, and in pybullet.getLinkState (URDF link frame in Cartesian/world coordinates)
2017-01-11 21:39:22 -08:00
Erwin Coumans
3d6584962a remove some memory leaks in example code. 2017-01-10 14:57:16 -08:00
Erwin Coumans
5e948ebe00 add placeholder for EGLOpenGLWindow 2017-01-09 15:59:47 -08:00
Erwin Coumans
0f51fb618d micro-sleep every 8 milliseconds in physics server, to not starve other threads. 2017-01-08 13:06:08 -08:00
Erwin Coumans
5e6cfd70b5 iOS platform and Android don't have __thread local storage, so avoid multi-threaded profiler on those (only on _WIN32, __linux__ and __APPLE__ and not TARGET_OS_IPHONE
Add a Sleep(0) for Windows to yield threads (and not Sleep(1))
2017-01-08 12:49:04 -08:00
Erwin Coumans
a051e6f164 fix pybullet unreachable code path 2017-01-07 10:25:10 -08:00
Erwin Coumans
b773481266 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-01-07 09:30:49 -08:00
Erwin Coumans
afdcf69837 implement some dummy methods in URDFImporterInterface, some code
breaks because of un-implemented methods
2017-01-07 09:30:06 -08:00
Erwin Coumans
10c7ddcb15 fix issue of duplicate classes with same name
causing issues with some linkers
2017-01-06 18:15:04 -08:00
erwincoumans
d37379ddc3 remove an extra quote in the BulletMJCFImporter.cpp 2017-01-06 14:53:10 -08:00
Erwin Coumans
4fc697f646 fix _WIN32 lacking #include <inttypes.h>
allow creation of multiple shared memory segments on win32.
fix pybullet compilation on Visual Studio 2010 (old compiler)
2017-01-06 10:19:19 -08:00
Erwin Coumans
44126584fb Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-01-06 09:56:04 -08:00
Erwin Coumans
8f02e75d98 avoid creating shared memory segments with same key multiple times 2017-01-06 09:55:22 -08:00
Erwin Coumans
8e554a0c1b allow creation of multiple shared memory segments 2017-01-06 09:49:03 -08:00
Erwin Coumans
af57c812aa Merge remote-tracking branch 'bp/master' 2017-01-06 07:39:08 -08:00
Erwin Coumans
90b1026785 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-01-05 18:36:54 -08:00
Erwin Coumans
0cf869e56a add multiple shared memory blocks, to allow multiple
simultaneous connections. At the moment, MAX_SHARED_MEMORY_BLOCKS = 2
Note that the amount of shared memory is limited on many systems,
32MB, while one block is already over 1MB at the moment...
You can connect to SHARED_MEMORY using the current key,
and key+1. There are a few commands that cannot currently be
executed in parallel among multiple connections,
since the implementation of the server
caches some data: rendering image (getCameraData),
getting contact point data and getting debug lines.
2017-01-05 18:30:01 -08:00
Erwin Coumans
83e103ac15 Add pybullet setVRCameraState and b3SetVRCameraStateCommandInit to set the VR camera root transform (position/orientation) and optional tracking object unique id (-1 for no tracking)
Fix robotcontrol.py script, getContactPointData -> getContactPoints
2017-01-05 17:41:58 -08:00
Benelot
fa2a734857 Update robotcontrol.py script. Closes #907. 2017-01-06 00:30:28 +01:00
erwincoumans
fb51c3f7ed Merge pull request #901 from erwincoumans/master
fix win32 UNICODE build, update pybullet quickstart quide PDF, pybullet.loadMJCF hookup
2016-12-31 17:40:28 -08:00
erwincoumans
92b53a4990 Merge pull request #895 from lunkhound/pr-fix-example-browser-text
example browser: restore on-screen text
2016-12-31 17:40:08 -08:00
Erwin Coumans
c940f0ec47 update pybullet quickstart quide PDF
hook up the loadMJCF importing MuJoCo xml files in pybullet and shared memory API b3LoadMJCFCommandInit
2016-12-31 14:43:15 -08:00
erwin coumans
63d3374c00 Merge remote-tracking branch 'bp/master' 2016-12-31 11:36:30 -08:00
erwin coumans
c6650f9329 fix win32 UNICODE build
re-enable VR teleport
2016-12-31 11:35:56 -08:00
erwincoumans
7d7e2fdf77 Merge pull request #900 from erwincoumans/master
First step towards a MuJoCo MJCF importer for Bullet. It can load the…
2016-12-30 19:02:10 -08:00
Erwin Coumans
fdd517e00f First step towards a MuJoCo MJCF importer for Bullet. It can load the humanoid.xml, ant.xml and some other OpenAI GYM asset files. Not all fields are converted, so it is work-in-progress. This is useful for Reinforcement Learning experiments, and would also help integration with DeepMind Lab. 2016-12-30 18:32:57 -08:00
erwincoumans
8efdd272b2 Merge pull request #899 from erwincoumans/master
pybullet: allow to connect to multiple physics servers, while maintai…
2016-12-28 22:51:40 -08:00
Erwin Coumans
7b9d194bfd fix compile issues 2016-12-28 22:38:48 -08:00
Erwin Coumans
d7d4fe5c45 fix compile issue (use constructor) 2016-12-28 22:24:03 -08:00
Erwin Coumans
ac02acc2f3 fix compile issue (btMin requires same types, no conversion, just replace with < = combo) 2016-12-28 22:10:03 -08:00
Erwin Coumans
82995a8343 pybullet, more robust multi-server connections
Windows shared memory: allow to use custom key.
Improve GUI performance on Windows, submit letters in text as a batch (fewer draw-calls)
quadruped.py: first try to connect to SHARED_MEMORY, if it fails (<0) use GUI
increase Chrome about://tracing json export capacity (press 'p' in Example Browser)
UDP physics server: add --port and --sharedMemoryKey command-line arguments
PhysicsServerExample: add --sharedMemoryKey command-line option (for VR example too)
ExampleBrowser: sleep a few milliseconds if rendering is too fast, use --minUpdateTimeMicroSecs=0 to disable
2016-12-28 21:51:54 -08:00
Erwin Coumans
da2cc483b4 pybullet: allow to connect to multiple physics servers, while maintaining backwards compatibility. connect method returns an integer 'physicsClientId'. This can be passed as optional argument to each method (except for a few 'obsolete' ones. 2016-12-27 20:25:52 -08:00