Erwin Coumans
3783dccaa3
create a C/C++ plugin system for pybullet / C-API.
2017-09-22 19:17:57 -07:00
Erwin Coumans
b9b1b2dbca
add B3_SHARED_API to the remaining PhysicsClientC_API APIs
2017-09-21 16:40:19 -07:00
erwincoumans
6a7efac4c3
Quick first prototype/test to integrate pybullet into Unity,
...
see readme.txt for details.
2017-09-20 23:18:18 -07:00
erwincoumans
ee30479a28
add option to log joint torques (due to user applied torques and/or motor torques)
...
See quadruped.py for an example:
p.startStateLogging(p.STATE_LOGGING_GENERIC_ROBOT, "genericlogdata.bin", maxLogDof = 16, logFlags = p.STATE_LOG_JOINT_TORQUES)
Thanks to JulianYG, in pull request https://github.com/bulletphysics/bullet3/pull/1273
2017-08-30 19:41:15 -07:00
Erwin Coumans
1569f3845c
more fixes in pybullet_gym envs/data.
...
implement pybullet.setAdditionalSearchPath
2017-08-27 19:34:00 -07:00
Erwin Coumans
aafaa7e33e
Expose optional "globalScaling" factor to pybullet.loadURDF and pybullet.loadSDF. This will scale the visual, collision shapes and transform locations.
...
Fix two_cubes.sdf (was lacking collision shape for second cube)
2017-08-14 14:59:41 -07:00
Erwin Coumans
88897cc744
implement pybullet.changeTexture. For now, the width/height has to match the target texture unique id, otherwise crashes may happen (a check for width/height match will be added)
...
See also examples\pybullet\examples\changeTexture.py
2017-06-30 19:11:43 -07:00
Erwin Coumans
dd3d55610b
fixes in pybullet.loadTexture, changeVisualShape replacing texture.
...
(also works for OpenGL3 renderer now)
2017-06-30 13:35:07 -07:00
Erwin Coumans
65e22ba3e9
allow auxilary link to be used for gear btMultiBodyGearConstraint.
2017-06-23 20:24:04 -07:00
Erwin Coumans
8e9f5ef3f3
fix compile issue
2017-06-23 16:22:38 -07:00
Erwin Coumans
2ab56b4d62
Allow to create concave collision meshes. Note that this is only supported for static (mass 0) multibodies.
2017-06-23 14:43:28 -07:00
Erwin Coumans
61f27a5c72
also add baseInertialFramePositionObj and baseInertialFrameOrientationObj to pybullet.createMultiBody
...
updated createMultiBodyLinks.py example.
2017-06-19 17:13:20 -07:00
Erwin Coumans
7441515c0e
Preliminary version of pybullet.createMultiBody including links connected to parent by a joint.
...
See createMultiBodyLinks.py example.
2017-06-19 13:15:05 -07:00
Erwin Coumans
f3c11b6f31
add capsule, cylinder, plane, mesh support for pybullet.createCollisionShape
...
preparation to add links to pybullet.createMultiBody
2017-06-19 10:14:26 -07:00
Erwin Coumans
2e6f8c271e
allow to disable/enable default keyboard shortcuts ('w', 'd' 's' etc) and default mouse picking
...
pybullet.getMouseEvents / b3RequestMouseEventsCommandInit
2017-06-17 13:29:14 -07:00
Erwin Coumans
23b155a2b4
add getAABB.py example.
...
fix getAABB / b3RequestCollisionInfoCommandInit to use less stack memory
2017-06-16 18:10:10 -07:00
Erwin Coumans
bb8cfe3c9a
pybullet.getAABB and getAPIVersion
...
fix btMultiBody::getLinkCollider
bump up Bullet C-API version
2017-06-15 19:46:27 -07:00
Erwin Coumans
60e3887456
enable btGearConstraint, expose 'changeDynamics' for gearRatio, only works for maximalCoordinates rigid bodies.
...
See examples\pybullet\examples\mimicJointConstraint.py
2017-06-07 13:44:34 -07:00
Erwin Coumans
d08f3e5f91
expose pybullet non-contact erp, friction erp and frictionAnchor, b3PhysicsParamSetDefaultNonContactERP / b3PhysicsParamSetDefaultFrictionERP / b3ChangeDynamicsInfoSetFrictionAnchor
2017-06-07 09:37:28 -07:00
Erwin Coumans
0c3a3cc466
pybullet.changeDynamicsInfo/b3ChangeDynamicsInfoSetContactStiffnessAndDamping expose contactStiffness/contactDamping
2017-06-07 08:37:42 -07:00
Erwin Coumans
a7aed37632
work on pybullet/C-API createMultiBody (still preliminary, only sphere/box collision shapes, no links/hierarchies yet, soon)
...
pybullet/C-API, expose linear/angular damping
fix some warnings (param name needs to be same in .h and .cpp)
fix potential startup threading issue (args were deleted in main thread while still possibly use in child thread)
fix for spinning/rolling friction in case of mixing maximal and reduced coordinate btMultiBody+btRigidBody
2017-06-04 22:04:16 -07:00
Erwin Coumans
b23cb1dd2c
pybullet.createCollisionShape, createVisualShape, createMultiBody, programmatic creation using ProgrammaticUrdfInterface
...
(still preliminary, not ready for commit yet, see examples\pybullet\examples\createSphereMultiBodies.py)
2017-06-03 10:57:56 -07:00
yunfeibai
bfcbb339cf
Merge remote-tracking branch 'upstream/master'
2017-06-02 18:26:04 -07:00
yunfeibai
e2a9fc33dc
Remove debug code.
2017-06-02 17:40:50 -07:00
yunfeibai
3506603d60
Test conversion from view matrix to yaw pitch roll.
2017-06-02 16:56:05 -07:00
yunfeibai
e97bb9d494
Add utility function to convert view matrix to camera yaw pitch roll.
2017-06-01 21:44:02 -07:00
yunfeibai
e6d1a8cf97
Swap yaw and pitch in camera computation. Add functions to convert view matrix to camera position, and camera position to camera yaw pitch roll.
2017-06-01 15:30:37 -07:00
Erwin Coumans
87293e835c
implement specular, URDF non-standard specular part (see sphere2.urdf) and SDF specular support.
...
pybullet.changeVisualShape(obUid,linkIndex,specularColor=[R,G,B]) and Bullet C-API b3UpdateVisualShapeSpecularColor
Bug fixes in b3ResourcePath::findResourcePath resolution.
add stadium.sdf and roboschool/models_outdoor/stadium assets https://github.com/openai/roboschool/tree/master/roboschool/models_outdoor/stadium
minor fixes to obj2sdf
2017-06-01 12:32:44 -07:00
erwincoumans
4e03c36fa6
add pybullet.multiplyTransforms and pybullet.invertTransform
...
use btAssert instead of assert (glGetError is really slow)
shift default light-position a little bit, to make faces different color
2017-05-29 21:55:58 -07:00
Erwin Coumans
b645963879
expose pybullet changeDynamics(spinningFriction=..., rollingFriction=..., restitution=...)
...
Bullet C-API b3ChangeDynamicsInfoSetSpinningFriction/RollingFriction/Resitution
b3PhysicsParamSetRestitutionVelocityThreshold, / pybullet.setPhysicsEngineParameter restitutionVelocityThreshold:
if the velocity is below this threshhold, the restitution is zero (this prevents energy buildup at near-resting state)
pybullet restitution.py example.
2017-05-26 18:14:38 -07:00
Erwin Coumans
5e2599863d
trackObject -> parentObject
...
trackLinkIndex -> parentLinkIndex
add example debugDrawItems.py
2017-05-24 09:06:15 -07:00
Erwin Coumans
db008ab3c2
Improve debug text/line rendering, can be use to draw frames and text in local coordinate of an object / link.
...
example:
kuka = p.loadURDF("kuka_iiwa/model.urdf")
p.getNumJoints(kuka)
pybullet.addUserDebugLine([0,0,0],[0,0,0.1],[0,0,1],trackObjectUniqueId=2,trackLinkIndex=6)
pybullet.addUserDebugText("tip", [0,0,0.1],textColorRGB=[1,0,0],trackObjectUniqueId=2,trackLinkIndex=6)
Also allow to render text using a given orientation (instead of pointing to the camera), example:
pybullet.addUserDebugText("tip", [0,0,0.1],textColorRGB=[1,0,0],textOrientation=[0,0,0,1], trackObjectUniqueId=2,trackLinkIndex=6)
Add drawTexturedTriangleMesh, for drawing 3d text.
Expose readSingleInstanceTransformToCPU, to extract position/orientation from graphics index.
updateTexture: allow to not flip texels around up axis
2017-05-23 22:05:26 -07:00
Erwin Coumans
19295f2859
enable file caching, currently only for Wavefront .obj files. You can disable file caching using
...
pybullet.setPhysicsEngineParameter(enableFileCaching=0)
Allow VR camera tracking only using position tracking, no orientation tracking (use
pybullet.setVRCamera([posX,posY,posZ],trackObjectFlag=0 or pybullet.VR_CAMERA_TRACK_OBJECT_ORIENTATION)
2017-05-17 19:29:12 -07:00
Erwin Coumans
9c4a5f9336
update VR camera even if setRealTimeSimulation(0)
...
also update w component in setVRCameraState orientation
2017-05-17 16:29:30 -07:00
Erwin Coumans
f80838e989
expose the changeVisualShape RGBA color for TinyRenderer, OpenGL3 renderer.
2017-05-13 09:18:36 -07:00
Erwin Coumans
53a82819a0
expose b3LoadMJCFCommandSetFlags / pybullet.pybullet_loadMJCF(fileName,flags=pybullet.URDF_USE_SELF_COLLISION_EXCLUDE_ALL_PARENTS)
2017-05-10 15:01:25 -07:00
yunfeibai
a587d4fec4
Use "change" instead of "reset" for changing dynamics info.
2017-05-09 10:44:33 -07:00
yunfeibai
98654a0cb4
Change dynamic to dynamics in dynamics info.
2017-05-09 10:31:28 -07:00
yunfeibai
5fe4c6bb5b
Add API to get dynamic info.
2017-05-07 22:21:38 -07:00
yunfeibai
e363e12ea4
Add default specular when there is not specular map. Add example for adjusting specular coefficient.
2017-05-07 21:09:08 -07:00
Erwin Coumans
1f64a87abe
Improve ChromeTraceUtil logging, allow filename to be specified.
...
Expose this ChromeTraceUtil logging to C-API: start/statelogging and submitProfileTiming
pybullet.submitProfileTiming, and STATE_LOGGING_PROFILE_TIMINGS used in startStateLogging
added example for Python profileTiming.py and C++ b3RobotSimulatorClientAPI::submitProfileTiming
2017-05-04 17:51:40 -07:00
Erwin Coumans
a7d08ca9d7
Merge remote-tracking branch 'bp/master'
2017-05-04 10:51:42 -07:00
Erwin Coumans
a86f584824
more work towards removeBody for C-API/pybullet, work-in-progress.
2017-05-03 21:53:29 -07:00
yunfeibai
939d6ead32
Add API to reset lateral friction coefficient.
2017-05-03 21:47:53 -07:00
yunfeibai
1841a41f2a
Add pybullet example for resetting dynamics.
2017-05-03 21:30:42 -07:00
yunfeibai
c7e9a31898
Add API to get user constraint id.
2017-05-03 18:25:25 -07:00
yunfeibai
4da2c076a7
Add API to reset mass.
2017-05-01 22:18:54 -07:00
Erwin Coumans
bdf366b045
implement pybullet.getDebugVisualizerCamera, width, height, providing viewmatrix, projection matrix
2017-04-10 11:03:41 -07:00
Erwin Coumans
82b6bc8770
apply the deviceTypeFilter also to VR state logging.
2017-04-08 11:48:12 -07:00
Erwin Coumans
440d445a02
also report VR events for HMD and generic tracked devices. Also expose those VR events to pybullet: expose a deviceTypeFilter, that defaults to VR_DEVICE_CONTROLLER
2017-04-07 22:53:36 -07:00