Commit Graph

287 Commits

Author SHA1 Message Date
erwincoumans
c1f6b7e9b8 fix memory leak in case a Wavefront .obj file had multiple shapes (texture was loaded multiple times, while only releasing one) 2017-06-08 09:21:32 -07:00
Erwin Coumans
c1e32e6428 fix potential memory leaks 2017-06-07 19:00:44 -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
erwincoumans
3987bdd333 remove pose frame from SDF,
allow plane collision shape in SDF
load the Roboschool stadium.sdf in humanoid_knee_position_control.py
2017-06-01 20:13:39 -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
d744fe10dc compile fix 2017-06-01 12:51:43 -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
e6180ef98a use a fixed joint instead of crashing for unsupported joint types (planar, floating joint) 2017-05-25 13:02:20 -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
dfe618bd62 initialize UrdfGeometry members 2017-05-15 07:59:07 -07:00
Erwin Coumans
e2d596f4d0 remove visual shape from CPU/TinyRenderer with removeBody
(thanks to Jeff Bingham for reporting the bug!)
2017-05-12 20:24:10 -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
Oleg Klimov
acf57f25e6 MJCF: change default link name to be more unique 2017-05-06 16:00:14 +03:00
Oleg Klimov
2c6b2211fc Friction typo 2017-05-06 16:00:14 +03:00
Oleg Klimov
b8afb4d7aa Memory leaks 2017-05-06 14:49:51 +03:00
Oleg Klimov
5a40b5aaae Compile fix 2017-05-06 14:49:51 +03:00
Oleg Klimov
1524004aa8 MJCF: support for "axisangle", small code improvements 2017-05-06 14:49:43 +03:00
Erwin Coumans
07992fe61d Improve MJCF import, to allow reading of friction parameters, including spinning and rolling friction, with some rudimentary 'default class' support.
Tweak VRGloveSimulatorMain to work better with MPL/mpl2.xml hand.
2017-05-02 18:05:36 -07:00
Erwin Coumans
af6bf8ddc8 plumb URDF/SDF audio_source into PhysicsServerCommandProcessor, allow to play sounds on collision !
See also https://youtu.be/eppOjTfx5Jg for a first test, and this modified URDF how to add sounds:
https://github.com/bulletphysics/bullet3/blob/master/data/plane_with_collision_audio.urdf
Add the --audio flag to enable sound in pybullet/Bullet-C-API
2017-05-01 11:14:09 -07:00
Erwin Coumans
e4ace90980 fix some potentially uninitialized variable 2017-04-25 21:37:04 -07:00
Erwin Coumans
ad2099e107 address 2 issues pointed out by PVS-Studio:
https://github.com/bulletphysics/bullet3/issues/1074
2017-04-17 10:01:44 -07:00
Erwin Coumans
5158c1ae98 add python dumpLog.py utility to view log files created using 'startStateLogging'
don't enable <CTRL> for hotkeys yet
add some more profile markers
log objectId and linkIndex as signed int ('i') and not unsigned int 'I'
fix issue in startStateLogging: number of parameters was wrong
2017-04-12 15:02:47 -07:00
Erwin Coumans
82b576a390 fixed a bug that prevented kitchens/1.sdf to render properly (local scaling was double applied)
disable some left-over clipping that was moved to another part of the code
2017-04-06 21:13:23 -07:00
Erwin Coumans
e32debdca4 improvements in MJCF importer: fix capsule shape inertia (for fromto definition)
add cylinder support
don't crash when no "quat" is provided
inertia fix in btMinkowskiSumShape (based on AABB)
2017-04-05 12:22:38 -07:00
Erwin Coumans
b095e1d917 expose pybullet.URDF_USE_SELF_COLLISION flag, experimental (likely doesn't work well for many URDF files) 2017-04-04 12:47:34 -07:00
Erwin Coumans
b1cbc3d4b0 fix a potential memory leak for URDF files with multiple materials using the same name 2017-03-30 13:30:38 -07:00
Erwin Coumans
9d05b46de2 expose width/height as ExampleBrowser options.
suppress lack of 'site' support message in MJCF importer
suppress lack of 'plane' visual support in urdf/sdf import
getBodyName default to "" to avoid breaking cloudsim
expose bodyName when requesting body info (sdf/mjcf import)
pass optional "options" string to pybullet.connect method. this can be used for --opengl2 flag in GUI mode (or other flags)
2017-03-30 11:01:33 -07:00
yunfeibai
f062847038 Replace spaces with tabs. 2017-03-29 15:37:33 -07:00
yunfeibai
66a8685816 Merge remote-tracking branch 'upstream/master' 2017-03-29 15:06:15 -07:00
Oleg Klimov
77608154a3 MJCF: fix capsule length when given in size="", fix slider joint limits 2017-03-27 22:54:20 +03:00
Oleg Klimov
dcb7e25f34 MJCF: improve error messages 2017-03-27 22:54:20 +03:00
Oleg Klimov
634f4cfdbc MJCF: support for angle units in <compile angle="...">, kill two stdout messages 2017-03-27 22:54:20 +03:00
Erwin Coumans
f4be2c1ee0 pass the joint parameters for all joints 2017-03-26 20:05:48 -07:00
Erwin Coumans
7503418c72 Split Bullet/src/LinearMath/btSerializer.cpp into btSerializer64.cpp to make it easier to rebuild serialization structure.
Add several MSVC optimization flags to cmake.
Bump up VERSION because serialization format changed
Expose btScalar& jointMaxForce, btScalar& jointMaxVelocity to 'getJointInfo2' API, add backwards compatibility to examples\Importers\ImportURDFDemo\URDFImporterInterface::getJointInfo.

pybullet: expose 4 more fields to getJointInfo: jointLowerLimit/jointUpperLimit/jointMaxForce/jointMaxVelocity
fix performance issue in CMD_ACTUAL_STATE_UPDATE_COMPLETED
2017-03-26 13:06:46 -07:00
Erwin Coumans
acbe8ee5cd remove use of snprint, fixes Issue 1037 2017-03-23 15:10:47 -07:00
yunfeibai
50f0cfca9e Add body name when loading urdf. 2017-03-23 10:16:39 -07:00
erwincoumans
a30b887595 Merge pull request #1025 from olegklimov/master
URDF loader improvement 2
2017-03-21 17:12:22 -07:00
Oleg Klimov
80a0b51a1d MJCF: fix cylinders in MJCF, also (possibly) fixes capsules in tiny renderer 2017-03-22 00:36:28 +03:00
Erwin Coumans
0b017b0f53 fix issue with btMultiBody friction in combination with soft contacts (friction should not re-use normal contact cfm/erp)
implement friction anchors, position friction correction, disabled by default. Use colObj->setCollisionFlag(flag | CF_HAS_FRICTION_ANCHOR); See test/RobotClientAPI/SlopeFrictionMain.cpp. In URDF or SDF, add <friction_anchor/> in <contact> section of <link> to enable.
PhysicsServer: properly restore old activation state after releasing picked object
btMultiBodyConstraintSolver: disable flip/flop of contact/friction constraint solving by default (it breaks some internal flaky unit tests)
2017-03-20 10:58:07 -07:00
Oleg Klimov
41df15a464 MJCF: fix B3_PI, fix colors, fix capsule without 'fromto' 2017-03-19 00:19:04 +03:00
Oleg Klimov
4526b0a94a MJCF: support for default joint limited="true" 2017-03-18 04:10:07 +03:00
Oleg Klimov
e8da7bb6f8 URDF loader: fix MuJoCo xml load, also closes #993 2017-03-17 02:11:47 +03:00
Erwin Coumans
3d2cb1cabf also allow absolute path in asset files (.obj, .stl, .dae etc) 2017-03-14 10:40:27 -07:00
Oleg Klimov
fa60cc5f56 URDF loader: fix SDF branch, warn about unsupported geometry 2017-03-14 02:32:02 +03:00
Oleg Klimov
3a8199ec28 Fix formatting 2017-03-10 19:46:46 +03:00
Oleg Klimov
82495f3c84 URDF loader: reuse the same resources finder routine for TinyRendererVisualShapeConverter 2017-03-10 18:17:38 +03:00
Oleg Klimov
5b2a9d1a01 URDF loader: resources path, "package://" removal, error messages, zero material path in .obj loader 2017-03-08 15:14:54 +03:00
Erwin Coumans
af295b6eed optimize hand (hand.py, vrhand.py) MPL.xml STL meshes for better collision detection performance (using Blender decimation tool) 2017-03-07 19:07:45 -08:00
Erwin Coumans
89e8e30de6 fix lack of collision scaling in pybullet URDF/SDF files (only graphics meshes supported scaling, collision objects ignored scaling) 2017-02-28 16:30:57 -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
7df123025f URDF parser: allow inertial element in just ixx, iyy, izz format (non-standard URDF)
tiny_obj_loader: don't crash when/if normals are not specified
2017-01-31 18:09:44 -08:00
Erwin Coumans
76dcf3a751 remove the contype=0 in inverted_pendulum.xml, so we can 'mouse-pick' the pendulum.
[mjcf importer] add rudimentary support for inertial frame computation, for 'fromto' capsules.
2017-01-24 21:10:21 -08:00
Erwin Coumans
1b2db1ff09 more btCapsuleShape fixes
use hello_mjcf.xml for MJCF importer
2017-01-23 22:22:02 -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
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
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
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
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
310fabcd7e Further improvements in Bullet MuJoCo MJCF import:
[MJCF import] improved humanoid.xml, inverted_pendulum.xml import (automatically add dummy-links to connect multiple joints between bodies)
[MJCF import] fix bug in quaternion conversion (w,x,y,z) -> (x,y,z,w)
2017-01-15 11:22:24 -08:00
Erwin Coumans
7b7d897e3b explicitly mark dead code 2017-01-12 12:29:15 -08:00
Erwin Coumans
3d6584962a remove some memory leaks in example code. 2017-01-10 14:57:16 -08:00
Erwin Coumans
b773481266 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2017-01-07 09:30:49 -08:00
Erwin Coumans
afdcf69837 implement some dummy methods in URDFImporterInterface, some code
breaks because of un-implemented methods
2017-01-07 09:30:06 -08:00
erwincoumans
d37379ddc3 remove an extra quote in the BulletMJCFImporter.cpp 2017-01-06 14:53:10 -08:00
Erwin Coumans
c940f0ec47 update pybullet quickstart quide PDF
hook up the loadMJCF importing MuJoCo xml files in pybullet and shared memory API b3LoadMJCFCommandInit
2016-12-31 14:43:15 -08:00
Erwin Coumans
fdd517e00f First step towards a MuJoCo MJCF importer for Bullet. It can load the humanoid.xml, ant.xml and some other OpenAI GYM asset files. Not all fields are converted, so it is work-in-progress. This is useful for Reinforcement Learning experiments, and would also help integration with DeepMind Lab. 2016-12-30 18:32:57 -08:00
Erwin Coumans
82995a8343 pybullet, more robust multi-server connections
Windows shared memory: allow to use custom key.
Improve GUI performance on Windows, submit letters in text as a batch (fewer draw-calls)
quadruped.py: first try to connect to SHARED_MEMORY, if it fails (<0) use GUI
increase Chrome about://tracing json export capacity (press 'p' in Example Browser)
UDP physics server: add --port and --sharedMemoryKey command-line arguments
PhysicsServerExample: add --sharedMemoryKey command-line option (for VR example too)
ExampleBrowser: sleep a few milliseconds if rendering is too fast, use --minUpdateTimeMicroSecs=0 to disable
2016-12-28 21:51:54 -08:00
Erwin Coumans
15cda75130 add <restitution> in <contact> settings of URDF/SDF
allow 'useMaximalCoordinates' and 'useFixedBase' in pybullet.loadURDF.
enable split impulse for btRigidBody, even in btMultiBodyDynamicsWorld.
allow initialization of velocity and apply force for btRigidBody in pybullet/shared memory API.
process contact parameters in URDF also for btRigidBody (friction, restitution etc)
add pybullet.setPhysicsEngineParameter with numSolverIterations, useSplitImpulse etc.
2016-11-30 22:24:20 -08:00
erwincoumans
9bad64fed9 allow obsolete OpenGL2 drawer to render with z-up axis. 2016-11-12 11:59:40 -08:00
erwin coumans
7577c6d893 add pybullet loadBullet, saveBullet (work-in-progress) and placeholder for loadMJCF. 2016-11-11 18:07:42 -08:00
erwincoumans
0d47d61007 pybullet getClosestPoints 2016-11-09 21:01:04 -08:00
erwin coumans
f97cb7002d first version of 'getVisualShapeData' to get visual shape information to allow external renderer with pybullet and shared memory robotics API
b3InitRequestVisualShapeInformation/b3GetVisualShapeInformation in shared memory API
2016-10-18 22:05:28 -07:00
erwin coumans
d6f449762b avoid wavefront obj texture index out-of-bounds (most obj out-of-bounds are not checked)
use second controller button
2016-10-04 08:53:59 -07:00
erwincoumans
f5e65197f4 fix pybullet.c compilation for Windows
add lego.urdf, duck.urdf (optimized using VHACD convex decomposition)
optimize Kiva shelf collision model (by hand, using boxes/Blender)
physics timescale toggle between  1 -> 0,25 -> 0
2016-09-24 11:25:05 -07:00
Logan Su
3b779ad3e9 Do not add limits for continuous joints. 2016-09-23 11:45:46 -07:00
erwincoumans
b6bb937dc0 URDF: don't parse joint limit for continuous joints
tweak KUKA iiwa inverse kinematics test in physics server
2016-09-22 23:21:24 -07:00
erwincoumans
46b32f17bb Add small sphere, make teddy small too
Add physics time scale in VR mode
Fix compound collision margin in physics server
Enable visuals for rigid body (non-multi-body) URDF/SDF loading in physics server.
2016-09-22 08:50:28 -07:00
erwin coumans
0a628f06cc decrease some gjk/epa tolerance to improve collision detection using very small collision margins (0.001/1mm)
tweak pr2 gripper.
2016-09-20 12:37:13 -07:00
erwincoumans
8d4c99801e Merge pull request #783 from bingjeff/urdf_loader_changes
[URDF] Edit loader to handle full inertia tensor.
2016-09-20 04:39:38 -07:00
erwin coumans
db3122233f remove that odd triangle in the origin of samurai castle (VR)
add rolling/spinning friction to cube, remove it from plane/samurai.urdf
URDF2Bullet: support joint limits for revolute and prismatic, only if defined (if upper < lower, disable limit)
add some profiling markers to improve performance
2016-09-19 07:02:43 -07:00
Erwin Coumans
1d88cf71e4 separate spinning friction (torsional friction around contact normal) from
rolling friction (orthogonal to contact normal)
2016-09-16 00:04:33 +01:00
Jeffrey Bingham
26a464bf0b [URDF] Edit loader to handle full inertia tensor.
Previous URDF loader did not handle off-diagonal elements
in the URDF. This commit adds functionality to allow
the loading of an inertia matrix that has not already
been reduced to its principal components. It diagonalizes
the inertia matrix, tests that the values are real and
updates the inertial frame.
2016-09-13 08:42:33 -07:00
erwin coumans
4ab02a07e5 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-09-08 15:22:41 -07:00
erwin coumans
32eccdff61 Create project file for BussIK inverse kinematics library (premake, cmake)
URDF/SDF: add a flag to force concave mesh collisiofor static objects. <collision concave="yes" name="pod_collision">
VR: support teleporting using buttong, allow multiple controllers to be used, fast wireframe rendering,
Turn off warnings about deprecated C routine in btScalar.h/b3Scalar.h
Add a dummy return to stop a warning
Expose defaultContactERP in shared memory api/pybullet.
First start to expose IK in shared memory api/pybullet (not working yet)
2016-09-08 15:15:58 -07:00
erwincoumans
ba2f522e05 Update BulletUrdfImporter.cpp
use free (and not delete), since b3ImportMeshUtility/stbi_load uses malloc (and not new)
2016-09-07 16:02:16 -07:00
erwincoumans
4c9b009d5b Merge pull request #770 from erwincoumans/master
export contact friction/damping through URDF and API
2016-09-02 18:18:21 -07:00
Erwin Coumans
ecd814c9c5 export contact friction/damping through URDF and API
convert from contact friction/damping to cfm/erp
btCollisionObject::setContactFrictionAndDamping
2016-09-02 16:40:56 -07:00
Logan Su
9d2d286c46 Fix joint orientations when loading URDF files. 2016-09-01 18:12:14 -07:00
erwincoumans
a370c3bbac Merge pull request #765 from YunfeiBai/master
Torsional and rolling friction for btMultiBody
2016-09-01 14:57:46 -07:00
yunfeibai
d784c61b61 Add rolling friction, set rolling friction coefficient from urdf, and set up two point contact experiment. 2016-08-30 11:19:23 -07:00
Logan Su
f86ce4d44b Add flags to load inertia values from URDF. 2016-08-29 15:09:18 -07:00
erwin coumans
c5164e503f fix in structure alignment of btMultiBodyLinkDoubleData and btMultiBodyDoubleData
causing serialization issue in  URDF/SDF loading in double-precision mode on Windows 32bit.
(it was fine on Mac/Linux 64bit)
bump serialization version to 2.85, as we change the file format
fix in name clash in makesdna.cpp -> intptr_t is already defined.
2016-08-26 10:00:29 -07:00
erwin coumans
6005e54aa1 Fix some inconsistencies in URDF file handling between btRigidBody and btMultiBody
(rotation order and application of root-inertial-frame offset)
2016-08-18 09:44:33 -07:00
Erwin Coumans
3c30e2f821 add segmentation mask rendering to TinyRenderer and shared memory API
similar to the zbuffer, but storing the object index (int) instead of float depth
2016-08-11 14:55:30 -07:00
Erwin Coumans
04cd9e18d6 add [] in error message of texture loading, to show leading/trailing spaces 2016-08-01 23:53:38 -07:00
Erwin Coumans
b759ab8a91 fix overflow visual shape in COLLADA .dae file importer. 2016-08-01 23:45:14 -07:00
Erwin Coumans
a6216f4f24 add robotics learning grasp contact example
add wsg50 gripper with modified r2d2 gripper tip
expose a fudge factor to scale inertia, to make grasping more stable
(until we have better grasping contact model/implementation)
2016-07-25 11:48:44 -07:00
erwincoumans
e88de13cc6 fix Parse joint dynamics in SDF 2016-07-20 15:41:58 -07:00
Mat Kelcey
9369f9b764 fix error msg when loading sdfs 2016-07-20 10:24:34 -07:00
Erwin Coumans
589fa376b3 only add compound child shapes to 'allocated' list once 2016-07-16 17:58:06 -07:00
Erwin Coumans
e2bdd7dbb1 fix more memory leaks, ImportURDFExample is now leak-free
eliminate all run-time memory allocation (except for mouse-pick/ray-intersection) in ImportURDFExample
2016-07-16 17:40:44 -07:00
Erwin Coumans
2caa2b7ff4 removed more memory leaks and improve btAlignedAllocator memory-leak debugging 2016-07-16 14:58:11 -07:00
Erwin Coumans
bbefc6b108 fix an issue in previous commit 2016-07-16 01:11:53 -07:00
erwin coumans
f9762d63ab Removed many memoryleaks in Example Browser, reducing some technical debt.
When running the Example Browser with Basic Example, 'visual leak detector' show no leak.
Many other individual examples still leak, so it is work-in-progress.
Disabled the profiler window (too many leaks)
2016-07-16 00:55:56 -07:00
erwin coumans
4a705d1e03 Add kiva_shelf to prepare for picking/grasping task
Fix uninitialized variable jointDamping/jointFriction in SDF importer
Add SDF <pose> parsing in visual, inertial, collision elements.
Slight improvement in TinyRender loading performance of largish meshes (30k vertices)
Reduce #define MAX_SDF_BODIES to 500, due to some issue in client code, todo: figure out what the issue is.
b3RobotSimAPI support SDF file loading
Tiny improvement in OpenGL hardware renderer lighting, to distinguish faces without textures
2016-07-14 00:05:57 -07:00
Erwin Coumans
10cc6f14cb add option to use hardware OpenGL renderer for synthetic camera 2016-07-12 18:16:13 -07:00
erwincoumans
5249ca7ceb Merge pull request #690 from hujiajie/master
[WIP] Suppress compiler warnings.
2016-07-11 18:13:58 -07:00
hujiajie
d776f06815 [WIP] Suppress compiler warnings.
Visual Studio C4099: 'CommonExampleInterface': type name first seen using 'class' now seen using 'struct'.
2016-07-11 18:02:42 +08:00
erwin coumans
7633cfb800 prepare robotics learning examples, see examples/RoboticsLearning/b3RobotSimAPI.h
prepare compliant contact work, urdf loading of parameters (see data/cube.urdf)
2016-07-11 00:26:40 -07:00
erwin coumans
60d2b99151 Physics runs in a separate thread from rendering in PhysicsServerExample (preliminary)
Improve rendering performance. OpenVR experience is smooth now.
commit needs a bit more testing before pushing in main repo.
2016-07-07 19:24:44 -07:00
Erwin Coumans
f5ffb11bc5 fix bus error on Raspberry Pi, unaligned float access when loading STL files
fix pybullet Python 3 issue (PyString_FromString -> PyBytes_FromString and PyInt_FromLong -> PyLong_FromLong)
2016-06-23 05:10:00 +00:00
Erwin Coumans
2b8bd58e1c support single-scalar scale values in URDF, even though "officially" it should be a vector3. This will load quadcopter.urdf in Drake:
https://github.com/RobotLocomotion/drake/blob/master/drake/examples/Quadrotor/quadrotor.urdf
2016-06-22 09:59:25 -07:00
Erwin Coumans
a67df7fd03 fix cmake and premake build systems, after adding texture support in SDF,
in a nutshell, add the following two files:

examples/Importers/ImportMeshUtility/b3ImportMeshUtility.cpp
examples/ThirdPartyLibs/stb_image/stb_image.cpp
2016-06-19 17:35:25 -07:00
Erwin Coumans
e3b2b1a969 add texture support in SDF, URDF for both OpenGL and software renderer (TinyRenderer) 2016-06-18 18:02:20 -07:00
yunfeibai
d51320be2c Check diffuse field in sdf. 2016-06-17 15:47:11 -07:00
Erwin Coumans
26f6618f00 colors for sdf 2016-06-17 12:07:38 -07:00
Erwin Coumans
bd668d11b0 add .stl file support in 'File/Open' of example browser. 2016-06-07 12:57:46 -07:00
erwin coumans
0b69ba7f61 Support the <static> field under <model> in SDF to make the model immovable, similar to setting the mass to zero.
Add joint velocity motors in ImportSDF example.
2016-06-02 18:04:22 -07:00
erwin coumans
f469a2cb49 update to tinyrenderer synthetic camera 2016-05-31 22:55:13 -07:00
Erwin Coumans
535ee33e3b fix build3/stringify.sh
fix some compile issues
2016-05-25 15:37:28 -07:00
erwincoumans
ef19248daf Update URDFImporterInterface.h 2016-05-24 10:30:04 -07:00
Erwin Coumans
b1adc0d9ef avoid API change in URDFImporterInterface
fix .obj texture loading issue
2016-05-24 09:01:03 -07:00
erwin coumans
2fc0358750 Expose a better API to allow any render engine to be used for the physics simulation when loading URDF/SDF files.
See bullet3/examples/Importers/ImportURDFDemo/DefaultVisualShapeConverter.h
Give the kuka_iiwa/model.urdf some blue color, not just orange, to mimick the original a bit better
Preparation for the CMD_CAMERA_IMAGE_COMPLETED command, to expose a virtual camera to the robotics API
2016-05-19 18:37:15 -07:00
erwin coumans
9cc028d44c fix issue, some paths didn't return a value 2016-05-19 09:16:47 -07:00
erwin coumans
606f78da43 work-in-progress tinyrenderer -> shared memory API synthetic camera image 2016-05-17 23:57:19 -07:00
Erwin Coumans
d186320f30 fixes in rendering 2016-05-13 18:45:56 -07:00
erwin coumans
6a9c54c4ef Remove unused ROS urdf (was replaced by Bullet UrdfParser.
Small refactoring for ExampleBrowser: move examples cpp files in the app/executable
Move ExtendedTutorials in its own app/executable as a test.
2016-05-12 23:03:12 -07:00
yunfeibai
7929bee128 parse root transformation and test loading two robots 2016-05-11 15:52:50 -07:00
yunfeibai
06a2669b32 test load kuka arm sdf 2016-05-11 13:43:50 -07:00
yunfeibai
1bebcc6d9a Merge remote-tracking branch 'upstream/master' 2016-05-10 10:18:27 -07:00
Erwin Coumans
e9c6abff47 add initial SDF importer, work-in-progress (still too incomplete to be useful) 2016-05-09 17:25:07 -07:00
erwin coumans
0a3efbe349 make standalone versions (console, tinyrender, opengl) of InverseDynamics/InverseDynamicsExample 2016-05-06 13:57:48 -07:00
erwin coumans
03bdcc8737 patch TinyRenderer so it software-renders in an OpenGL texture, for testing
fix texture support: flip texture to make OpenGL happy (lower-left is origin)
add path prefix to .obj loader, so materials/textures are loaded ok.
2016-04-26 20:52:52 -07:00
yunfeibai
cbeddfc897 Modify shared memory client example to test joint motor torque measurement. 2016-04-19 16:52:47 -07:00
Erwin Coumans
476eb342ab fix scaling in URDF importer 2016-04-18 17:41:54 -07:00
Erwin Coumans
f3c7f30684 fix some memory leaks in ImportURDF / PhysicsServerCommandProcessor 2016-04-11 16:42:02 -07:00
Erwin Coumans
5c1eb2ec07 support 'world' tag for fixed objects in URDF 2016-03-30 14:43:59 -07:00
erwincoumans
fe92de3e50 add infrastructure float btMultiBodyLink m_jointDamping, m_jointFriction (actual damping/friction is in a separate commit)
add door.urdf for testing damping/friction
2016-03-17 14:54:46 -07:00
Erwin Coumans
aa3daaa8c6 turn test/SharedMemory/test.c into a gtest for CI unit testing in github
remove overly verbose printfs in importers
fix axis in r2d2.urdf
2016-03-15 22:47:53 -07:00
erwincoumans
ad29d27700 add initial inverse dynamics example skeleton, with urdf and programmatically created btMultiBody.
disabled in Bullet/examples/ExampleBrowser/ExampleEntries.cpp
2015-11-13 10:37:43 -08:00
erwincoumans
3b9b803683 b3CreateBoxCommandSetColorRGBA: allow to specify color when creating bodies through shared memory API
Parse and use colors from URDF file (single rgba color per link, not per visual)
Rename btMultiBody 'stepVelocities' to 'computeAccelerationsArticulatedBodyAlgorithmMultiDof'
btHashMap, add const Value* operator[]
remove a few more obsolete btMultiBody methods (on the non-multi-dof path)
fix spelling typo in fillConstraintJacobianMultiDof (fil -> fill)
Add mention to Jakub Stepien for his work on btMultiBody
2015-11-06 17:11:15 -08:00
erwincoumans
2920d7e61f Only support btMultiBody multi-dof version (remove non-multi-dof path)
Use ATTRIBUTE_ALIGNED16 for btMultiBody
Always disable parentCollision for btMultiBody::setupFixed
2015-11-05 21:17:46 -08:00
Erwin Coumans
8a956318e5 fix case sensitive issue 2015-10-28 16:02:55 -07:00
Erwin Coumans
163b797d8b Update to ZLib license for GWEN files.
Note that our copy of GWEN is modified and GWEN is not under active development anymore.
We plan to integrate and modify GWEN further into the Bullet Example Browser or rewrite the GUI and drop GWEN

fix cube.obj and cube.mtl to enable textures
2015-10-25 11:30:34 -07:00
=
4df58c35c7 use const in PhysicsClientC_Api, thanks to Roland
fix some warnings for Clang, thanks to Aaron
2015-10-15 08:15:22 -07:00
=
8d26ff356d allow links without collision shapes in btMultiBody URDF importer 2015-09-25 17:00:44 -07:00
=
2257ec05ad don't compensate for COLLADA up axis in collision element for now
(todo: let user override COLLADA up axis, some URDF files are inconsistent)
2015-09-10 17:36:19 -07:00