Commit Graph
100 Commits
Author SHA1 Message Date
erwin coumans dbcb509246 Merge remote-tracking branch 'bp/master' 2016-10-21 10:55:06 -07:00
erwin coumans 617aa63d3a Merge remote-tracking branch 'bp/master' 2016-10-21 08:09:26 -07:00
Erwin Coumans 0ca1cee6f0 add a few virtual destructors, remove physics client from server 2016-10-20 14:08:55 -07:00
erwin coumans 24593ed11a fix r2d2.urdf and avoid self-penetrating limbs 2016-10-19 16:21:33 -07:00
erwin coumans eda400d14c Merge remote-tracking branch 'bp/master' 2016-10-19 07:43:46 -07:00
erwin coumans 3b8090fcc1 fix a pybullet.c issue on some compilers (don't allow for (int i=...)
make the build_visual_studio_vr_pybullet_double.bat smart enough to find any Python installation in c:\python*
2016-10-19 07:42:55 -07: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 d1ab6c144b change some defaults in MultiBody example, a slider constraint without limits is a bad idea 2016-10-16 11:52:38 -07:00
erwin coumans 29f3afe2a4 don't use GL_LINEAR_MIPMAP_LINEAR for shadow maps
optimize gpu upload (use glBufferSubData instead of glMapBuffer
Avoid checking char array against zero.
2016-10-14 15:06:09 -07:00
erwin coumans a6225d4cd0 add check for #dof of KUKA in VR demo
disable debug drawing again in VR demo
2016-10-09 21:48:56 -07:00
erwin coumans 4cd401212c SharedMemory API: don't enable rolling friction by default for programmatic created rigid bodies 2016-10-07 17:52:14 -07:00
erwin coumans 98d47809b4 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-10-07 09:01:39 -07:00
erwin coumans ddff1bcdc0 remove some useless global constants, move them right into the constructor 2016-10-07 09:00:49 -07:00
erwin coumans d59b0f05a4 expose b3PhysicsParamSetNumSolverIterations
split Visual Studio project generation batch file in regular and VR+pybullet+double precision build.
disable KUKA iiwa joint limit hack
2016-10-05 16:31:48 -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
erwin coumans b81eb79ef5 ping-pong back/forward in PGS solving iterations to reduce bias in constraint order
add experimental rhs clamp in btMultiBodyJointMotor to control maximum error resolution.
2016-09-28 11:17:11 -07:00
erwin coumans 0936ae6600 expose getNumBodies, getBodyUniqueId, getBodyInfo (char* baseName) to shared memory API and pybullet., making it easier to serialize the state of the world. 2016-09-27 12:13:45 -07:00
erwin coumans a325747dd4 pybullet premake, keep extension 2016-09-27 08:33:53 -07:00
Erwin Coumans 96c1ee4256 revert default contact 'erp' (error-reduction-parameter) from 0.8 to 0.2
as it used to be.
2016-09-26 07:55:30 -07:00
Erwin Coumans ed5aea74a1 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-09-26 07:16:51 -07:00
Erwin Coumans ffee956dde add VHACD, with the addition of Wavefront .obj export 2016-09-26 07:16:18 -07:00
erwin coumans e356f4f1f6 add test end-effector for Kuka iiwa (IK) 2016-09-22 19:48:26 -07:00
erwin coumans 310a330572 fix InverseKinematics+API for a case without tree (custom build Jacobian) 2016-09-22 13:27:09 -07:00
Erwin Coumans 89eef8e091 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-09-20 23:19:27 -07:00
Erwin Coumans e1ba6e9736 add simple pybullet robotcontrol.py example 2016-09-20 23:19:03 -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
erwin coumans bb23f91578 disable some logging method 2016-09-19 14:40:17 -07:00
erwin coumans a4165adddc more tweak in pr2_gripper.urdf (VR), remove some collision meshes (until interaction issues are resolved) 2016-09-19 14:40:01 -07:00
erwin coumans 3eb149ca75 Merge branch 'master' of https://github.com/erwincoumans/bullet3
# Conflicts:
#	examples/SharedMemory/PhysicsServerCommandProcessor.cpp
2016-09-19 14:33:55 -07:00
erwin coumans a3aa8ef7f1 tune gripper parameters for VR demo 2016-09-19 14:31:47 -07:00
Erwin Coumans e488c72496 fix build issue 2016-09-19 10:19:51 -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 8355f09b21 delete -> free due to the use of stb_image.h (which uses malloc) 2016-09-16 16:25:13 -07:00
Erwin Coumans 567b003654 separate spinning and rolling friction coefficients, exposed in URDF as spinning_friction / m_rolling_friction
improvements in VR demo, add grasper etc.
2016-09-16 00:57:00 +01: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
Erwin Coumans 4d6a95017e default contact erp (m_erp2) was too low in physics server
causing gripper to penetrate box
2016-09-15 23:11:27 +01:00
Erwin Coumans f9679bd594 prevent an issue in TinyRendererSetup example 2016-09-14 00:30:58 +01:00
Erwin Coumans 5e09b17baf experimental Inverse Kinematics for KUKA iiwa exposed in
shared memory api and pybullet. Will be extended for arbitrary bodies
and with target orientation (besides target position)
2016-09-13 23:37:46 +01:00
Erwin Coumans 7df9b69039 pybullet: add option to use NumPy to speed up, thanks to moof2k
option is disabled by default. When using cmake, use
cmake -DBUILD_PYBULLET=ON -DBUILD_PYBULLET_NUMPY=ON
then both testrender.py and testrender_np.py will work
without numpy only testrender.py works.
The numpy.reshape is likely a no-op when using numpy array,
so we could remove testrender_np.py...

See https://github.com/bulletphysics/bullet3/pull/774
2016-09-11 11:35:12 +01:00
Erwin Coumans 5c76b01659 allow pybullet with or without NumPy 2016-09-11 11:09:51 +01:00
Erwin Coumans c75bbd4608 allow pybullet with or without numpy using PYBULLET_USE_NUMPY define (in build system) 2016-09-11 11:09:10 +01:00
Erwin Coumans ec46934e22 Merge remote-tracking branch 'bp/master' 2016-09-11 10:56:55 +01:00
Erwin Coumans e921f1b9b7 remove duplicate definitions of SHARED_MEMORY_MAX_STREAM_CHUNK_SIZE 2016-09-11 08:40:58 +01:00
Erwin Coumans 82661d98cd init ERP for second btMultiBodyJointMotor,
comment-out debug printf in Kuka IK example
2016-09-11 05:54:47 +01:00
erwin coumans c5d775a635 disable real-time by default 2016-09-09 14:41:23 -07:00
erwin coumans 3c706306cd add experimental pr2-gripper support in VR physics server
add setErp to btMultiBodyJointMotor
2016-09-09 14:30:37 -07:00
erwin coumans f72982306e fix issues with VR physics server 2016-09-09 11:28:38 -07:00
Erwin Coumans 016dc273c6 fix an SSE/SIMD 16-byte alignment issue 2016-09-09 09:01:04 -07:00
Erwin Coumans 3e23c793ad Merge remote-tracking branch 'bp/master' 2016-09-09 08:24:50 -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
Erwin Coumans e0127bdb54 merge pybullet.c after conflicts due to Jeff's formatting pull request. 2016-09-08 11:12:58 -07:00
Erwin Coumans 8ba9a04dd9 Merge remote-tracking branch 'bp/master' 2016-09-08 07:39:48 -07:00
erwin coumans de5d1b5cfc make husky wheels soft/compliant
reduce shadow size to make VR on older GPU (Mac Pro 2013) perform more smooth
less sleep in physics thread.
2016-09-03 08:39:40 -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
Erwin Coumans (Google) f7522873f9 fix compile issue on Linux 2016-09-01 22:11:07 -07:00
Erwin Coumans e98fca1e5e implement pybullet.getContactPointData(), two optional object unique ids as filter
returns a pylist of contact points. Each point has the following data:

	0     int m_contactFlags;//unused for now
         1     int m_bodyUniqueIdA;
         2     int m_bodyUniqueIdB;
         3     int m_linkIndexA;
         4     int m_linkIndexB;
         5-6-7     double m_positionOnAInWS[3];//contact point location on object A, in world space coordinates
         8-9-10     double m_positionOnBInWS[3];//contact point location on object A, in world space coordinates
         11-12-13     double m_contactNormalOnBInWS[3];//the separating contact normal, pointing from object B towards object A
         14     double m_contactDistance;//negative number is penetration, positive is distance.

         15    double m_normalForce;
2016-09-01 18:28:39 -07:00
Erwin Coumans e6865a1186 Merge remote-tracking branch 'bp/master' 2016-08-30 14:44:35 -07:00
Erwin Coumans a30ff20e6b preparation for KUKA IK tracking example 2016-08-30 14:44:11 -07:00
Erwin Coumans 900fd86d58 fix R2D2GraspExample 2016-08-29 12:35:02 -07:00
Erwin Coumans 68efd7dd6e Merge remote-tracking branch 'bp/master' 2016-08-29 10:38:59 -07:00
Erwin Coumans 9fc438e742 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-29 10:38:51 -07:00
erwin coumans 4094b9f0df Disable 'm_robotSim.setNumSimulationSubSteps' because it is not needed at the moment
Fix issue in contact/friction between btMultibody and btRigidBody (external force/torque of btRigidBody was not taken into account during contact/friction setup)
Allow 0.1 mm slop in contact, to avoid loosing contact. Todo: allow contacts with positive distance in multibody solver.
2016-08-27 13:44:18 -07:00
Erwin Coumans 887e88a490 Merge remote-tracking branch 'bp/master' 2016-08-27 10:37:48 -07:00
Erwin Coumans fb3f2d896c Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-27 10:37:35 -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 2861d2ae59 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-25 20:02:34 -04:00
Erwin Coumans 7db9a020b9 debug draw contact normals (1cm) use black color 2016-08-19 10:55:21 -07:00
erwin coumans 62d5b7c5c0 add single step simulation, using 'o' key. use 'i' key to suspend simulation first
default background color a bit darker, to show debug lines
tweaked contact point rendering a bit
2016-08-19 10:30:02 -07:00
erwin coumans a68c9ca845 avoid MT crash in VR/physics server due to printf from separate thread.
add fps display in VR
use 1./240. internal substep for real-time physics sim in VR/physics server for more accurate robotics sim.
2016-08-18 21:43:43 -07:00
Erwin Coumans 91839cb274 revert change of default position control in shared memory api/pybullet 2016-08-18 16:48:14 -07:00
erwin coumans 8c2b1386ce Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-18 15:54:43 -07:00
erwin coumans 2c636b52f7 bugfix: in torque control mode, torque index starts at 6. 2016-08-18 15:36:18 -07:00
Erwin Coumans 013a702b2f Merge remote-tracking branch 'bp/master' 2016-08-18 13:44:29 -07:00
Erwin Coumans ab8f498d18 avoid infinite recursion in b3Clock::usleep 2016-08-18 13:44:04 -07:00
Erwin Coumans d4485ca3d9 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-18 13:42:18 -07:00
erwin coumans 5b0253ed47 Remove undesired assert, it makes pybullet mistakes fail in c++
Shared memory api/pybullet: by default, set joint motors in position PD mode with target 0, to maintain 0 joint angle.
pybullet: allow setJointControlMode(body, link, POSITION_CONTROL,targetPos etc.
2016-08-18 13:10:28 -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 7c9441c3f5 by default, have a strong force keep the robot together, instead of floppy joints. 2016-08-17 10:30:50 -07:00
Erwin Coumans dce73f48ae Merge remote-tracking branch 'bp/master' 2016-08-17 10:24:12 -07:00
Erwin Coumans 463f3e59c8 minor tweak in F1/screenshot handling. Note you can use --png_skip_frames=x command-line argument 2016-08-17 10:18:33 -07:00
Erwin Coumans 985a6c203f fix typo 2016-08-13 12:38:40 -07:00
erwin coumans 3bdcf23a05 Add sleep to avoid 100% busy CPU loop in PhysicsServerExample
Added btClock::usleep
Fix broken TinyRenderer example code.
2016-08-13 12:21:18 -07:00
Erwin Coumans 238ba8c642 remote a c++11-style constructor 2016-08-12 14:28:02 -07:00
Erwin Coumans ceceaa16be make some changes to make the previous example code changes backward compatible 2016-08-12 14:18:46 -07:00
Erwin Coumans c75bebcafe revert accidently renaming of m_depthvalues4 2016-08-12 13:55:37 -07:00
Erwin Coumans 4abe083388 fix pybullet 2016-08-11 15:58:51 -07:00
Erwin Coumans 4bb488f65e reset canvas location 2016-08-11 15:02:00 -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 f416644481 set the camera, even in multi-threaded mode 2016-08-11 11:20:31 -07:00
erwin coumans a9b1544a9f Add premake support to build pybullet, Windows and Linux tested, will enable Mac in next commit.
Expose inverse dynamics to Bullet shared memory API, through b3CalculateInverseDynamicsCommandInit and
b3GetStatusInverseDynamicsJointForces command/status. See PhysicsClientExeample or pybullet for usage.
Add option for Windows and Linux to set python_lib_dir and python_include_dir for premake and --enable_pybullet option
Expose inverse dynamics to pybullet: [force] = p.calculateInverseDynamics(objectIndex,[q],[qdot],[acc])
Thanks to Jeff Bingham for the suggestion.
2016-08-09 18:40:12 -07:00
Erwin Coumans b880ddf76b add pybullet render API with yaw/pitch/roll option
add testrender.py file
allow option to enable OpenGL hardware renderer in multithreaded sim

b3RequestCameraImageSelectRenderer(commandHandle,ER_BULLET_HARDWARE_OPENGL);
2016-08-08 14:23:44 -07:00
Erwin Coumans f5fca86d49 remove debug printf 2016-08-02 11:14:21 -07:00
Erwin Coumans f304fd7611 add one more pybullet renderImage API and testrender.py example
tweak Bullet Inverse Dynamics, work-around compiler issue
2016-08-02 11:12:23 -07:00
Erwin Coumans 93db3d7ba6 fix CMD_INIT_POSE+INIT_POSE_HAS_INITIAL_ORIENTATION,
setWorldToBaseRot takes inverse orientation (need to remove that API!)
2016-08-02 09:30:33 -07:00
Erwin Coumans 30ae7f7514 Merge remote-tracking branch 'bp/master' 2016-08-02 08:11:41 -07:00
Erwin Coumans 2597e9eddb Merge branch 'master' of https://github.com/erwincoumans/bullet3 2016-08-02 08:11:27 -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 a608f9bfdd fix trailing space issue in tinyobjloader/mtl files. 2016-08-01 23:46:35 -07:00
Erwin Coumans b759ab8a91 fix overflow visual shape in COLLADA .dae file importer. 2016-08-01 23:45:14 -07:00