Commit Graph

608 Commits

Author SHA1 Message Date
Erwin Coumans
bfcdb8c408 add App_PhysicsServerTCP and App_PhysicsServerSharedMemoryBridgeTCP
(can be easier tunneled over SSH)
2017-02-20 14:43:01 -08:00
Erwin Coumans
55361e262e fix 6dof sensors for fixed joints (recent bug left fields uninitialized in getJointInfo)
add premake build support for Test_PhysicsClientUDP
2017-02-20 13:18:33 -08:00
yunfeibai
e12981fd45 Enable logging a specified list of objects for generic robot logging. 2017-02-20 12:17:12 -08:00
yunfeibai
a3c1fec171 Add logging for generic robot and an example of logging state of kuka and cubes. 2017-02-17 17:41:57 -08:00
erwincoumans
45aa392a28 Update PhysicsServerCommandProcessor.cpp 2017-02-17 15:43:38 -08:00
Erwin Coumans
cfd35840f0 initial implementation of state logging.
see examples/pybullet/logMinitaur.py for example. Other state logging will include general robot states and VR controllers state.
2017-02-17 14:25:53 -08:00
Erwin Coumans
2b27ab2463 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-02-17 10:48:03 -08:00
Erwin Coumans
34c3fca8d5 prepare state logging system (log state of robot, vr controllers after each stepSimulation) 2017-02-17 10:47:55 -08:00
Erwin Coumans
8f546acbe8 disable keyboard toggle in Linux/X11
revert num solver iterations to 50 (from 150)
set solver iterations for one gripper grasp to 150
2017-02-16 15:56:42 -08:00
Erwin Coumans
63486a712c VR video recording, use command-line --mp4=videoname.mp4
tune gripper grasp example with tefal pan, 800Newton force.
URDF importer: if using single transform 1 child shape, don't use compound shape.
if renderGUI is false, don't intercept mouse clicks
add manyspheres.py example (performance is pretty bad, will look into it)
[pybullet] expose contactBreakingThreshold
2017-02-16 14:19:09 -08:00
Erwin Coumans
6db217b36a remove some sleep delays from PhysicsServerExample physics loop. 2017-02-09 18:27:51 -08:00
yunfeibai
ce69f27f32 Modify the depth buffer value in TinyRenderer to be consistent as in OpenGL. 2017-02-08 11:34:38 -08:00
erwincoumans
46c7974927 Merge pull request #947 from erwincoumans/master
[pybullet] add some out-of-bounds checks, reduce run-time memory allocations
2017-02-07 12:07:40 -08:00
Erwin Coumans
56b4ac278b pybullet workaround for very slow Mac OSX GUI mode, since OpenGL can only run in main thread, just like the Python interpreter
improve quadruped.py script, to allow 'useRealTime' 0 or 1
2017-02-07 08:08:55 -08:00
erwincoumans
88fdffba04 pybullet/shared memory API: add some more check for out-of-bounds indices when setting up a command.
avoid many run-time memory allocations in btCompoundCompoundCollisionAlgorithm
2017-02-04 12:32:42 -08:00
yunfeibai
abbd3ad884 minor fix. 2017-02-03 12:46:49 -08:00
yunfeibai
3442b6524a Merge remote-tracking branch 'upstream/master' 2017-02-03 12:32:08 -08:00
yunfeibai
ce9378f819 Add shared memory API and RobotSim API for setting joint damping in IK. 2017-02-03 11:08:44 -08:00
yunfeibai
0022d0dafb Modify damped least square IK formulation. Test setting joint damping coefficients for IK. 2017-01-31 22:58:37 -08:00
erwincoumans
3a42b356e2 Add profile markers for BenchmarkDemo raytest.
Implement pybullet enableJointForceTorqueSensor, add forcetorquesensor.py example.
2017-01-31 10:14:00 -08:00
erwincoumans
26a34e3cda Move ChromeTracing in its own file, and add tracing support for VR server (App_SharedMemoryPhysics_VR)
Add a bit of extra sleep in PhysicsServer thread, to make rendering smoother.
2017-01-29 20:59:47 -08:00
erwincoumans
446cb77a5e [UDP] disconnect needs to set m_data->m_isConnected=false 2017-01-28 23:18:26 -08:00
erwincoumans
d0e1ec8c48 add a usleep(0) to improve UDP performance on Windows (busy-loop eats all CPU time, other thread didn't proceed) 2017-01-28 22:46:23 -08:00
erwincoumans
87bce5eacf UDP networking improvements and experiments (send CMD_STEP_FORWARD_SIMULATION as 4 bytes command, status 8 bytes, instead of enormous command/status packages.
Change some timeouts to use actual RTC time instead of dummy loops 1024*1024*1024.
Fix type conected -> connected
2017-01-28 22:14:45 -08:00
erwincoumans
2b3c25d5f2 add a b3Clock::usleep in PhysicsClientUDP to avoid clogging all resources
report more meaningful connection status for UDP.
2017-01-28 12:42:04 -08:00
erwincoumans
37ed4b819a [cmake] only use BT_ENABLE_VR for the _VR target
use -DUSE_DOUBLE_PRECISION=ON when building pybullet and/or VR targets
2017-01-25 22:41:31 -08:00
Erwin Coumans
94c768bea8 cmake build support for VR demo (WIN32 only)
update to latest OpenVR 1.05 SDK from https://github.com/ValveSoftware/openvr
add keyboard support to tune default camera VR position
VR revert to double 'distorted' views on Desktop, since the single view isn't showing full scene
2017-01-25 19:17:57 -08:00
Erwin Coumans
e652696f52 report localVisualFrame instead localInertialFrame 2017-01-25 08:29:45 -08:00
Erwin Coumans
95e25d9942 fix a few warnings 2017-01-24 08:36:46 -08:00
Erwin Coumans
d465e1eea5 add capsule support in urdf parser (non-standard extension), capsule.urdf
fix btCapsuleShape (X,Y,Z) margin issue
fix uninitialized variables in TinyRenderer: m_hasLightDistance, m_hasLightAmbientCoeff, m_hasLightDiffuseCoeff, m_hasLightSpecularCoeff
pybullet/shared memory API 'getClosestPoints' / b3InitClosestDistanceQuery, only report contacts equal/smaller distance than given
2017-01-23 16:45:18 -08:00
Erwin Coumans
73e83d6e84 fix OSX build, fix some warnings 2017-01-22 21:06:51 -08:00
Erwin Coumans
cf9f022d39 [pybullet] getNumConstraints, getConstraintInfo APIs.
[pybullet] updated pybullet_quickstartguide.pdf
Fail clearly (assert, return BT_INFINITY) if link index is out of range for btMultiBody methods localPosToWorld,worldPosToLocal,localDirToWorld,worldDirToLocal.
pybullet getConstraintInfo
Fix warnings due to Mac OSX 10.12 upgrade (with backward compatibility)
2017-01-22 19:08:31 -08:00
Erwin Coumans
64957ece9f add hand.py/hand.ino used to create this VR glove, using MuJoCo Haptix MPL hand (Apache 2 license)
https://www.youtube.com/watch?v=VMJyZtHQL50
added b3InitSyncBodyInfoCommand, to retrieve body info, when connecting to a server with existing bodies
pybullet will call this b3InitSyncBodyInfoCommand automatically after connecting
Avoid overriding the py.setVRCameraState setting in VR
2017-01-20 18:13:24 -08:00
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
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
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
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
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
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
8f02e75d98 avoid creating shared memory segments with same key multiple times 2017-01-06 09:55:22 -08:00