erwincoumans
707bac9c3d
fix sphere sdf parsing
2018-10-22 16:01:58 -07:00
erwincoumans
7e86a579e9
Merge pull request #1946 from RanTig/transform-changed-notification-active
...
Uses btCollisionBody::isActive instead of btMultiBody::isAwake to determine whether to send transform changed notifications.
2018-10-22 07:36:13 -07: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
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
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
79f6cc901e
Merge pull request #1935 from erwincoumans/master
...
fix fileIO issue with \r\n in lines
2018-10-14 16:48:22 -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
erwincoumans
11ef1bf0cd
Merge pull request #1929 from erwincoumans/master
...
allow to provide rayCastBatch in local 'from'/'to' with a parent/link…
2018-10-11 18:14:20 -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
erwincoumans
d6b50d3bcc
Merge pull request #1927 from erwincoumans/master
...
backward compatibility fix
2018-10-09 21:45:48 -07:00
erwincoumans
03461a0d1f
Merge pull request #1922 from erwincoumans/master
...
First pass of load files through an interface (to allow loading from …
2018-10-09 11:14:40 -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
332cbfa609
fix typo in previous commit
2018-10-06 18:37:51 -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
erwincoumans
71d4a90c98
btMultiBody: fix indexing issue causing wrong friction to be reported (has no effect, since we don't use warmstarting for multibody)
2018-10-06 15:25:22 -07:00
erwincoumans
8765c0a027
Merge remote-tracking branch 'bp/master'
2018-10-06 13:18:22 -07:00
erwincoumans
cb55094a11
Merge pull request #1918 from erwincoumans/master
...
fix depth image, setRGBA color and projective texture for eglPlugin, also add getCameraImageTest.py to compare various render modes.
2018-10-05 21:36:40 -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
erwincoumans
62016a785b
Merge pull request #1915 from WenlongLu/create_status
...
Fix a memory leak when removing collision shape
2018-10-02 12:18:32 -07:00
erwincoumans
db6f35b88a
Merge pull request #1914 from erwincoumans/master
...
removed flags from loadURDF command. The flags are already available …
2018-10-02 08:42:09 -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
erwincoumans
e668eee028
Merge pull request #1913 from erwincoumans/master
...
add glViewport after startRendering
2018-10-02 08:17:12 -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
erwincoumans
a86db9c8c6
Merge pull request #1911 from erwincoumans/master
...
fix EGL issue related to glViewport in startRender method
2018-10-01 18:52:23 -07:00
erwincoumans
6b63e81829
Merge pull request #1907 from erwincoumans/master
...
scaling striding is 4 (scaling+object uid) instead of 3,
2018-09-30 21:18:07 -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
erwincoumans
95d5da1cd9
Merge pull request #1906 from erwincoumans/master
...
apply clang-format (on Mac, slightly different than running it on Win…
2018-09-30 11:44:45 -07:00
erwincoumans
85da5e922d
Merge pull request #1905 from erwincoumans/master
...
PyBullet Allow OpenGL/EGL hardware to render segmentation mask. Much faster OpenGL/EGL rendering for small images, resize glViewport
2018-09-30 07:53:08 -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
erwincoumans
df78380718
Merge pull request #1899 from WenlongLu/master
...
Add const qualifiers to the double [] inputs in PhysicsClientC_API
2018-09-26 19:11:53 -07:00
erwincoumans
180a9f5103
Merge pull request #1897 from erwincoumans/master
...
Fix eglPlugin
2018-09-24 08:07:26 -07:00
erwincoumans
c1ba89a01c
Fix eglPlugin
2018-09-24 08:06:28 -07:00
erwincoumans
cdd56e4641
Merge pull request #1895 from erwincoumans/master
...
Code-style consistency improvement: _clang-format applied
2018-09-23 19:22:09 -07: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
d54c8395ac
Merge pull request #1882 from lucasw/patch-1
...
Spelling fix: on-way -> one-way
2018-09-22 14:59:48 -07:00
erwincoumans
cff111ba04
Merge pull request #1894 from erwincoumans/master
...
allow to disable self-collision for a link-pair, only enable eglPlugin for Linux (disable eglPlugin for Win/Mac)
2018-09-22 14:59:08 -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
erwincoumans
8d8f96c850
Merge pull request #1886 from erwincoumans/master
...
pybullet, fix single step synchronous rendering, add missing files in pip version 2.1.8
2018-09-20 09:26:58 -07:00
erwincoumans
874bbc91a3
Merge remote-tracking branch 'bp/master'
2018-09-20 09:08:56 -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
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
d315673d3a
Merge pull request #1879 from erwincoumans/master
...
fix internal build / pybullet version bump
2018-09-14 18:54:41 -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
erwincoumans
826ca0892a
Merge pull request #1877 from erwincoumans/master
...
bump up pybullet version to 2.1.5
2018-09-12 20:34:24 -07:00
erwincoumans
bd4717e9cc
Merge pull request #1876 from erwincoumans/master
...
use numpy to reshape image data to matplotlib compatible format
2018-09-12 20:25:53 -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
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
erwincoumans
87e8711b0a
Merge pull request #1872 from RanTig/GetLinkStateFix
...
Change b3GetLinkState to use numLinks in status handle
2018-09-11 08:48:30 -07:00
erwincoumans
5b1588fc3f
fix createProtobufs.bat script
2018-09-10 23:32:51 -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
erwincoumans
ab84975ca9
Merge pull request #1870 from erwincoumans/master
...
pybullet eglPlugin: fix Mac OSX build
2018-09-10 12:23:36 -07:00
erwincoumans
1a047901ce
Merge pull request #1869 from erwincoumans/master
...
fixes in eglRendererPlugin
2018-09-10 07:51:39 -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
2744e84592
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2018-09-09 15:25:27 -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
c4fe0f7357
disable enable_egl by default (?!?)
2018-09-09 14:39:56 -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
erwincoumans
377a89c09c
Merge pull request #1866 from jna29/bug-fix/robot-manipulators-errors
...
Fixed bugs mistaking forearm_roll_joint for upper_arm_roll_joint
2018-09-08 18:53:47 -07: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
erwincoumans
cc91b4a7cf
Merge pull request #1865 from erwincoumans/master
...
update quickstart guide, bump up pybullet version
2018-09-08 13:50:52 -07:00
erwincoumans
9085c18354
Merge pull request #1863 from erwincoumans/master
...
remove pre-build proto/grpc files (they differ for each platform and …
2018-09-07 16:17:06 -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
12409f1118
Merge pull request #1860 from erwincoumans/master
...
allow pybullet to connect to GRPC server. (need to use flag --enable_…
2018-09-05 21:20:21 -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
erwincoumans
437c0426c9
Merge pull request #1859 from erwincoumans/master
...
only add notifications if there is a plugin that needs them
2018-09-04 20:59:29 -07:00
erwincoumans
c084763795
Merge pull request #1858 from erwincoumans/master
...
make GRPC work on Linux,
2018-09-04 17:49:49 -07:00
erwincoumans
2006f134b6
Merge pull request #1857 from erwincoumans/master
...
make grpc work on Mac OSX with premake
2018-09-04 17:03:27 -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