Commit Graph

241 Commits

Author SHA1 Message Date
erwincoumans
a651cb9ab4 Implement first pass of transparent graphics object for GLInstancingRenderer
remove 'enableBlend' from API, graphics instances use alpha component instead
fix forward axis for SimpleCamera
2017-06-24 13:41:33 -07:00
Erwin Coumans
9e5e0da9f4 move stb_image/stb_truetype.h and stb_image/stb_image_write.h to ThirdPartyLibs/stb_image folder 2017-06-22 08:48:18 -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
Erwin Coumans
030d723db6 fix some warnings 2017-06-01 16:48:07 -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
5c6045b61f turn down effect of default specular a bit 2017-06-01 13:15:58 -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
Erwin Coumans
3157093125 Implemented specular reflective lighting for OpenGL 3.x, everything looks shiny (will add APIs to make it less shiny ;-)
Remove roof from kitchens/1.sdf, otherwise shadows and shinyness won't work (light is outside the room, bouncing against roof-top)
Make kuka_iiwa/model.urdf more smooth, use .obj for per-vertex normals (using Blender, import STL, export OBJ, enable triangles, normals and Z-UP, Y forward)
2017-05-31 20:32:45 -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
e023c012b4 TinyRendererVisualShapeConverter set near/far for its own camera. 2017-05-25 13:39:36 -07:00
Erwin Coumans
84d09cc18f Split CommonGfxVertex3D into two different ones, GfxVertexFormat0 and GfxVertexFormat1
Rewrite  GLInstancingRenderer::drawTexturedTriangleMesh
2017-05-24 13:05:16 -07:00
Erwin Coumans
9f7d7fecd5 more rendering fixes 2017-05-23 23:34:55 -07:00
Erwin Coumans
df1b5b6ca5 fix shader issue 2017-05-23 23:17:57 -07:00
Erwin Coumans
2d04d39fcf bump up pybullet version, include <string.h> for memset 2017-05-23 22:41:08 -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
433d11d8cf Add a btIDEbugDraw::clearLines, helps multi-threaded rendering of lines (while updating those lines in a dynamics world in a different thread)
Expose COV_ENABLE_VR_RENDER_CONTROLLERS, to enable/disable rendering of controllers (and some frames) in VR
Expose COV_ENABLE_RENDERING to enable/disable rendering.
Fix some multi-threading issues (potential crashes), related to debug drawing/rendering in one thread, while changing the dynamics world/removing/resetSimulation in a different thread.
2017-05-16 12:19:03 -07:00
Erwin Coumans
a554c250a7 GLInstancingRenderer: don't crash but assert/return -1, if the # vertices exceeds the maximum capacity. 2017-05-15 09:02:49 -07:00
Erwin Coumans
f80838e989 expose the changeVisualShape RGBA color for TinyRenderer, OpenGL3 renderer. 2017-05-13 09:18:36 -07:00
Erwin Coumans
7cb763e4c8 don't render objects with zero alpha color (RGBA) 2017-05-13 07:38:00 -07:00
Erwin Coumans
b22ffcf61c Use more googley colors in the examples.
Add high-resolution textured sphere, and automatically convert sphere, capsule and multi-sphere shape to use this, with caching to avoid duplicates.
2017-05-11 22:59:27 -07:00
Erwin Coumans
a86f584824 more work towards removeBody for C-API/pybullet, work-in-progress. 2017-05-03 21:53:29 -07:00
Erwin Coumans
152e3da3e4 Implementation of virtual void CommonRenderInterface::removeGraphicsInstance(int instanceUid)
for GLInstancingRenderer (OpenGL3+) and SimpleOpenGL2Renderer (OpenGL2)
Refactored the add/remove object pool in Bullet3Common/b3ResizablePool.h
Added CommonRigidBodyBase::deleteRigidBody, also removing its graphics instance.
2017-05-03 17:05:05 -07:00
Erwin Coumans
eaa6255e06 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-04-26 21:33:19 -07:00
Erwin Coumans
943dd16e78 disable keyboard repeat on Windows
add some TinyAudio classes to play wav, mostly from Stk (http://github.com/thestk/stk)
2017-04-26 21:31:01 -07:00
Erwin Coumans
552c85617f fix compile issue 2017-04-23 17:12:40 -07:00
Erwin Coumans
4759e5a590 tinyrenderer: disable triangle backface culling (doesn't work well, cull triangles that should be visible)
GLInstancingRenderer: allow to set the light position
2017-04-23 07:35:13 -07:00
David Carlier
756568ad9c build fix for BSD systems 2017-04-16 17:53:44 +01:00
Erwin Coumans
f73b54e4ab testing ImGUI 2017-04-11 20:16:49 -07:00
Erwin Coumans
bdf366b045 implement pybullet.getDebugVisualizerCamera, width, height, providing viewmatrix, projection matrix 2017-04-10 11:03:41 -07:00
erwincoumans
e1874c6b54 Update MacOpenGLWindow.cpp 2017-04-06 22:41:04 -07:00
Erwin Coumans
e487bc360b add support for setuptools setup.py pybullet for 'pip install pybullet'
rewrite MacOpenGLWindow.mm into .m version, so that setup.py can handle it.
See also test at https://pypi.python.org/pypi/pybullet/0.1.0
2017-04-02 23:00:06 -07:00
Erwin Coumans
2211a20ab6 remove 20 second time limit for ffmpeg 2017-03-30 12:38:13 -07:00
Erwin Coumans
fffa17dd35 little tuning for rendering 2017-03-28 08:20:10 -07:00
Erwin Coumans
46c5b00964 report actual number of instances (enable sync transforms for physics server) 2017-03-27 23:09:24 -07:00
Erwin Coumans
b9642e8e68 enable base OpenGL2 rendering as fallback for more demos including physics server (use --opengl2 flag in Example Browser), no shadows yet. 2017-03-27 21:42:37 -07:00
Erwin Coumans
59d16b2c42 expose video capture as logging command in b3RobotSimulatorClientAPI (C++) and pybullet (use STATE_LOGGING_VIDEO_MP4) 2017-03-16 09:13:33 -07:00
Erwin Coumans
34fc2fb589 create premake/cmake file for Bullet/Extras/obj2sdf
add missing 1.sdf for Bullet/data/kitchens/1.sdf
add support for getting keyboard events (pybullet.getKeyboardEvents and b3RobotSimulatorClientAPI::getKeyboardEvents)
2017-03-02 12:33:22 -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
yunfeibai
ce69f27f32 Modify the depth buffer value in TinyRenderer to be consistent as in OpenGL. 2017-02-08 11:34:38 -08:00
yunfeibai
c92fd6120d EGL OpenGL window. 2017-02-06 16:22:17 -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
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
5e948ebe00 add placeholder for EGLOpenGLWindow 2017-01-09 15:59:47 -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
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