Commit Graph

335 Commits

Author SHA1 Message Date
erwincoumans
97c6937388 Simplify GJK. Still needs double precision for large differences of feature scales.
Extract faces directly from btConvexHullComputer (in initializePolyhedralFeatures), instead of reconstructing them, thanks to Josh Klint in #1654
PyBullet: use initializePolyhedralFeatures for convex hulls and boxes (to allow SAT)
PyBullet: expose setPhysicsEngineParameter(enableSAT=0 or 1) to enable Separating Axis Test based collision detection for convex vs convex/box and convex versus concave triangles (in a triangle mesh).
2018-06-12 16:08:46 -07:00
Erwin Coumans
552cb5852a PyBullet: add signed distance field support, with example/signedDistanceField.py
See also data\toys\concave_box.urdf and data\toys\concave_box.cdf

data\toys\concave_box.cdf was generated from concave_box.obj using
//GenerateSDF.exe -r "32 32 32" -d "-1.6 -1.6 -.6 1.6 1.6 .6" concave_box.obj
//SDF is based on code from DiscreGrid, https://github.com/InteractiveComputerGraphics/Discregrid
2018-04-16 22:57:43 +02:00
Erwin Coumans
f37e22bfba fix syntax error 2018-04-10 15:29:31 -07:00
erwincoumans
759d8b5317 nullptr -> 0 (no C++11) 2018-04-09 21:28:29 -07:00
erwincoumans
103f16c64a UINT_MAX requires #include <limits.h> 2018-04-09 20:59:16 -07:00
erwincoumans
5747b1a689 fix case sensitive header include 2018-04-09 20:57:36 -07:00
erwincoumans
7949f31c3e fixes in btMiniSDF 2018-04-08 21:30:06 -07:00
erwincoumans
698836d54e Preparation to add signed distance field collision detection.
btMiniSDF is based on https://github.com/InteractiveComputerGraphics/Discregrid
2018-04-08 21:10:03 -07:00
Alexis Breust
d3f7a68541 Removed warning in btCapsuleShape header 2018-01-25 16:41:25 +01:00
Erwin Coumans
c7314dad31 fix bug, causing bus-error in ExampleBrowser 2018-01-24 05:50:44 -08:00
Erwin Coumans
79051b7611 allow to use colors from MJCF file as option (default to random Google colors), use p.loadMJCF(filename, flags=p.URDF_MJCF_COLORS_FROM_FILE
fix quadruped.py example.
add PyBullet.isConnected() API, more friendly than PyBullet.getConnectionInfo()["connected"]
2018-01-11 21:04:08 -08:00
Joey Liaw
bbc536d887 add const to masses for calculatePrincipalAxisTransform 2017-11-25 13:33:26 -08:00
erwincoumans
d45cc49a90 Merge pull request #1421 from elect86/master
Update btTriangleIndexVertexArray.h
2017-11-09 12:09:33 -08:00
Erwin Coumans
344005a8f0 catch invalid mass/inertia instead of division by zero/nan. also, avoid indexing <0 2017-11-07 19:25:14 -08:00
Giuseppe Barbieri
16ed6ec10b Update btTriangleIndexVertexArray.h 2017-11-04 12:06:45 +01:00
Giuseppe Barbieri
5436336a38 Update btStaticPlaneShape.cpp 2017-11-01 22:53:39 +01:00
Erwin Coumans
4a7469a1ba fix uninitialized-variable issues (were unused initialized, but triggers some memory checking tools) 2017-06-09 21:19:02 -07:00
Erwin Coumans
fc6fb7b14c initialize values (padding etc) help asan/msan tests 2017-05-09 18:00:28 -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
nicolaichuk
5527e36139 Merge remote-tracking branch 'remotes/bulletphysics/master'
# Conflicts:
#	src/BulletCollision/CollisionDispatch/btCollisionWorldImporter.h
2017-03-23 14:28:49 +03:00
nicolaichuk
74b1044a05 move constructor for abstract class in protected 2017-03-23 14:14:14 +03:00
erwincoumans
11975ec60b Merge pull request #259 from AlexanderPolyakov/master
Fix for use of uninitialized variables.
2017-03-13 21:57:03 -07:00
Erwin Coumans
1b2db1ff09 more btCapsuleShape fixes
use hello_mjcf.xml for MJCF importer
2017-01-23 22:22:02 -08:00
Erwin Coumans
a25a5e523c drop non-uniform local scaling support for btCapsuleShape 2017-01-23 21:10:32 -08:00
Erwin Coumans
0060c42ae8 more fixes for btCapsuleShape: its entire radius is collision margin, don't let the user override it (similar to a btSphereShape) 2017-01-23 19:38:14 -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
Kotik Andreev
bc34d0129e Fix a little typo 2016-10-31 01:45:44 +03: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
471d3652e4 (finally) applied patch to fix 'setLocalScaling' of btMultiSphereShape
See https://code.google.com/archive/p/bullet/issues/636
http://bulletphysics.org/Bullet/phpBB3/viewtopic.php?f=9&t=8237 and
https://github.com/bulletphysics/bullet3/issues/125
2016-07-02 10:07:13 -07:00
erwincoumans
a5fa8712ec Merge pull request #385 from lordloki/btCone
New btConeshape member functions setHeight and setRadius
2016-06-09 08:58:25 -07:00
Erwin Coumans
372c4ef9c1 Add btConvexHullShape::optimizeConvexHull method,
it automatically removes vertices that are not on the convex hull.
It uses the btConvexHullComputer for this.
2016-05-04 13:01:06 -07:00
=
3d10338ed5 fix warnings (thanks to Aaron!) 2015-09-10 17:52:41 -07:00
Andrew Meadows
ac7dc87a4d btCompoundShape data members protected not private 2015-08-03 16:26:23 -07:00
erwincoumans
9d7d5caa8b Merge pull request #404 from donggas90/master
Improve Compound Shape Construction.
2015-08-03 08:49:30 -07:00
=
eb6663ed4b further work on shared memory API
fix dependency of BulletDynamics to Bullet3Common (b3Printf)
2015-08-02 14:00:43 -07:00
Erwin Coumans
26531f3fbc fix some warnings, disable gimpact by default in world importer,
use DIRECTLY_UPDATE_VELOCITY_DURING_SOLVER_ITERATIONS by default for now,
until we find the issue with some failing test cases in btMultiBody
fix a crashing issue in MyMultiBodyCreator.cpp (uninitialized variable)
disable excessive debug printf in URDF2Bullet
2015-07-27 13:28:47 -07:00
donggas90
96d9e54080 Improve Compound Shape Construction. 2015-06-08 13:35:17 +09:00
Jorge Bernal
c02e197e77 New btConeshape member functions to can set radius and height for the
cone shape after creation
2015-05-17 17:39:48 +02:00
erwin coumans
1e13454511 Added experimental implicit gyroscopic force implementation, one by Michael Ewert, and another by Cooper (from OpenDE)
Will also add Erin Catto's local implicit version from the GDC 2015 tutorial
Added demo for btGeneric6DofSpring2Constraint, thanks to Gabor Puhr
Add gfxBridge.autogenerateGraphicsObjects method for Bullet 2 demos in new framework (need to implement all Bullet 2 collision shape types...)
Use 1,1,1 for local scaling in btStaticPlaneShape
2015-03-24 15:55:05 -07:00
Erwin Coumans
c7671779c2 add method to add triangle by its indices for btTriangleMesh
See also https://github.com/bulletphysics/bullet3/pull/315
thanks to quiasmo   for the contribution
2015-02-04 10:47:13 -08:00
AlexanderPolyakov
b7699024e2 Fix for use of uninitialized variables.
m_implicitShapeDimensions was used in setMargin, called from setSafeMargin
from constructors of btBoxShape, btCylinerShape and btBox2dShape,
effectively using uninitialized variable and leading to floating point
exceptions.
It was working correctly only because in the same constructor
m_implicitShapeDimensions was reinitialized after setSafeMargin.
Properly initialize variable before use by first setting it up and only
then using it in setSafeMargin.
2014-10-07 19:26:14 +04:00
Erwin Coumans
3c558ec995 explicitly deserialize btCapsuleShape date (margin, scaling, halfextents), because the API modifies them 2014-08-26 17:21:08 -07:00
Erwin Coumans
5834547368 fix more warnings in BulletCollision, and fix CMakeLists for Linux 2014-08-21 15:54:50 -07:00
bgossage
d58857f06b -- Corrected cast of 32-bit int to 64-bit pointer
-- Removes 64-bit portability issue.
2014-07-17 11:13:07 -05:00
erwin coumans
eb74688c18 Add setUserIndex/getUserIndex (int index) to btCollisionShape
Share physics setup of BasicDemo between different graphics frameworks, see Demos\BasicDemo\BasicDemoPhysicsSetup.*
Plan is to do this for all Bullet demos.
Improve gwen performance and cursor navigation for tree control.
tweak shadowmap size
SimpleOpenGL3App::registerCubeShape accepts half extents
2014-05-20 12:02:01 -07:00
XBog
ed42e217b5 subdivion backface shouldnt be in front 2014-04-12 18:11:58 +02:00
erwin.coumans
e94a2137b0 minor update manual
fix vehicle demo (heightfield is broken, when using very large scaling factor)
add btConeShape serialization, see Issue 725
add btGearConstraint get/set, see Issue 685 and Issue 671
2013-09-13 16:34:39 +00:00
erwin.coumans
8f4f99809e use btScalar instead of float for btTriangleMesh
thanks to nsarkozi. This fixes issue 704
2013-09-12 22:22:15 +00:00
erwin.coumans
bb379bd84c fix one of the btCompoundShape scaling issues, this fix breaks the API (need to add warning at the next release)
fixes https://code.google.com/p/bullet/issues/detail?id=374 and
https://code.google.com/p/bullet/issues/detail?id=444
2013-09-10 23:34:23 +00:00
erwin.coumans@gmail.com
2bb26cbb7d Enable btHeightfieldShape in VehicleDemo, so it is tested (using heightfield128x128)
(converted raw data to .cpp so it doesn't need to be loaded from disk)
Some optimizations for btHeightfieldShape, thanks to Danny Chapman
 Quick check on AABB (was not done) and reduce calls to 'getVertex'
2013-09-10 00:57:00 +00:00