Commit Graph

2363 Commits

Author SHA1 Message Date
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
mbennice
6655bd60c8 Update stb_image.h import 2018-09-27 14:09:00 -07:00
mbennice
99dbedab6e Update import 2018-09-27 12:49:39 -07:00
mbennice
7485999254 Clang Format Change 2018-09-27 10:00:39 -07:00
mbennice
30d4c4136a Piping through the flag to parse sensors 2018-09-27 09:49:59 -07:00
Wenlong Lu
8cdb514ffb missed one 2018-09-26 17:46:39 -07:00
Wenlong Lu
2681f5cd9f add const qualifiers to all double* inputs in PhysicsClientC_API 2018-09-26 17:24:40 -07:00
mbennice
173cc2538f Correct header update
Revert the header update change.
2018-09-26 16:38:59 -07:00
mbennice
f79b04357f Update URDF Importer to process sensor elements.
Update the URDF Importer to add sensors as 0 mass 0 inertia elements
attached by a fixed joint. This way their states can be read as links.
2018-09-26 16:35:22 -07:00
Wenlong Lu
3c0e57e025 add const qualifier to double [] inputs 2018-09-26 15:02:22 -07:00
Erwin Coumans
cd2f111a10 update pybullet version, include *.* from OpenGLWindow 2018-09-25 17:06:32 -07:00
Erwin Coumans
f20b7bb07c tweak pole IK demo 2018-09-25 06:22:06 +00:00
erwincoumans
c1ba89a01c Fix eglPlugin 2018-09-24 08:06:28 -07:00
Julian Viereck
219dfc757a Adding support for lateral friction to getContactPoints() 2018-09-24 10:03:43 -04: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
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
Erwin Coumans
350adb5c7c Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-09-21 09:56:25 -07:00
Erwin Coumans
47efe66017 disable eglPlugin from setup.py / pip pybullet on Windows and Mac (only enable on Linux) 2018-09-21 09:55:57 -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
Erwin Coumans
0de99f224a fix compilation on ARM (Ubuntu 18.04, NVIDIA Xavier) 2018-09-19 16:18:06 -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
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
Erwin Coumans
b0971b4beb fix our internal build 2018-09-13 10:20:38 -07:00
Erwin Coumans
d909448ee3 bump up pybullet version again 2018-09-12 21:03:07 -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
Erwin Coumans
1efee29c27 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-09-12 08:20:03 -07:00
Erwin Coumans
c83fa30daa use numpy to reshape image data to matplotlib compatible format
fixes issue #1871
2018-09-12 08:19:30 -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
Erwin Coumans
23ecbab7b3 fix setup.py and pybullet to work better with eglPlugin on Linux 2018-09-11 13:24:35 -07:00
Tigran Gasparian
58699258dd Change b3GetLinkState to use numLinks in status handle
Changes the b3GetLinkState function to use numLinks from the
SharedMemoryStatus returned from RequestActualState instead of the
cached number of link value returned by b3GetNumJoints.

The cached value can be outdated when a new body is added and
SyncBodyInfo isn't used, while using the value in the status is always
up-to-date.
2018-09-11 14:44:06 +02:00
erwincoumans
5b1588fc3f fix createProtobufs.bat script 2018-09-10 23:32:51 -07:00
Erwin Coumans
9fa3e44539 fixes related to egl plugin 2018-09-10 23:31:54 -07:00
Erwin Coumans
3b0a44e1be fix createProtobufs.sh script 2018-09-10 23:24:00 -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
Erwin Coumans
f26d4fdc4c pybullet eglPlugin: fix Mac OSX build 2018-09-10 08:55:47 -07:00
bla
6992195ba8 add pybullet example for eglRendererPlugin, will use EGL in a plugin on Linux, Win32OpenGLWindow in a plugin on Windows 2018-09-09 23:03:07 -07:00
bla
8f711462e0 fix setup.py to work better on Windows and Linux (with default eglPlugin static built-in,
just use pybullet.loadPlugin("eglRendererPlugin") before loading/creating any objects.
use end/startRendering (swap buffers) before the rendering in the eglPlugin
2018-09-09 22:58:08 -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
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
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