Commit Graph

873 Commits

Author SHA1 Message Date
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
erwincoumans
a5ecbbc682 Merge pull request #898 from erwincoumans/master
many pybullet / VR improvements
2016-12-27 15:57:17 -08:00
e655fead29 fix CMakeLists.txt for BasicDemoGui on WIN32 2016-12-27 15:12:25 -08:00
291d35ea6e fix some linux issues (cmake doesn't need to link against OpenGL, X11, Xext since we dynamically load those
move some structures to global namespace
2016-12-27 13:20:12 -08:00
Erwin Coumans
018aa08bf8 suppress Linux error related to PRIu64/__STDC_FORMAT_MACROS 2016-12-26 22:55:28 -08:00
Erwin Coumans
178a002cb5 prev -> prevPosition 2016-12-26 22:40:08 -08:00