Commit Graph

2337 Commits

Author SHA1 Message Date
Erwin Coumans
fbbd675ed6 expose PyBullet API to wakeup/put objects to sleep, enable/disable deactivation
fix wakeup -> reset deactivation clock
2018-06-15 21:26:26 -07:00
erwincoumans
5f203df65a Update btConvexConvexAlgorithm.cpp 2018-06-13 07:47:14 -07:00
erwincoumans
6376197e5e Merge pull request #1749 from erwincoumans/master
remove getLinkState from API, it automatically calculated forwardKine…
2018-06-13 03:38:36 +00:00
Erwin Coumans
e24da97140 revert GJK change yet again, some degenerate case / regression 2018-06-12 19:52:38 -07:00
erwincoumans
437d66f9b4 Update btOverlappingPairCache.h
processAllOverlappingPairs : don't call own method, call the default one without dispatchInfo. Thanks James Dolan, fixes Issue #1750
2018-06-12 19:04:31 -07:00
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
erwincoumans
62485abafe PyBullet: disable deterministic pairs by default
PyBullet: Only set static when sleeping is enables (todo: figure out issue with determinism)
2018-06-11 17:32:44 -07:00
Erwin Coumans
ad0c7ecaa2 different way of sorting pairs (using indexing), don't 'clear' all pairs. 2018-06-11 14:42:26 -07:00
erwincoumans
0cec85626f enable more unit tests in PyBullet.
return Py_None if no user data found, to pass the test.
enable m_deterministicOverlappingPairs by default.
if m_deterministicOverlappingPairs, sort the collision pairs.
2018-06-09 12:19:29 -07:00
Erwin Coumans
134beaf8dc fix uninitialized m_companionId in btMultiBody (only happens if sleeping is enabled) 2018-06-05 16:40:41 -07:00
erwincoumans
fa648a028e fix a few problems introduced in #1730
https://github.com/bulletphysics/bullet3/pull/1730
2018-06-05 09:16:00 -07:00
Tigran Gasparian
bb72a91080 Clears the user data cache when syncUserData is called.
Adds unit test for the UserData functons.
Changes the char pointer in btHashString to std::string. There were
problems where the object owning the string memory would deallocate the
string, making the btHashString object invalid.
2018-06-04 15:10:48 +02:00
erwincoumans
b6120e760a PyBullet.addUserData / getUserData / removeUserData / getUserDataId / getNumUserData / getUserDataInfo
See examples/pybullet/examples/userData.py how to use it. TODO: add to PyBullet Quickstart Guide.
Thanks to Tigran Gasparian for the contribution!
2018-06-02 13:40:08 -07:00
erwincoumans
a450600eb8 revert gjk test 2018-06-01 22:17:46 -07:00
erwincoumans
e721a9cdf5 revert testing changes 2018-06-01 22:02:17 -07:00
erwincoumans
54ddbad29f remove printf 2018-06-01 21:56:34 -07:00
erwincoumans
92579f9196 Merge branch 'master' of https://github.com/erwincoumans/bullet3
# Conflicts:
#	examples/SharedMemory/PhysicsServerCommandProcessor.cpp
2018-06-01 09:35:15 -07:00
erwincoumans
11d8f069f0 Disable overlapping pair debug variables behind the BT_DEBUG_COLLISION_PAIRS preprocessor definition. 2018-05-29 17:06:35 -07:00
erwincoumans
ec4b3505a4 fix fixed constraint between btMultiBody and btRigidBody 2018-05-29 16:49:07 -07:00
Erwin Coumans
e79ae13cde disable adhoc gjk terminarion heuristics by default 2018-05-26 08:52:52 +10:00
Erwin Coumans
d133c33d73 Use a very large default m_contactStiffness (so that if one object is a bit soft, the stiffness is properly combined) 2018-05-26 08:50:45 +10:00
Erwin Coumans
a9ff5246c9 make gjk a bit more robust, try different initial guess vector if it fails to find a solution (happens for queries with large differences in shape size) 2018-05-25 08:18:12 +10:00
Erwin Coumans
62d58259bc Fix Issue #1623, SphereTriangleDetector for cases with positive contactBreakingThreshold and where sphere was intersecting with multiple edges
(need to take the closest edge)

Thanks to Andrea Catania for the report and reproduction case!
2018-05-22 08:36:00 +10:00
erwincoumans
83a34d8ae2 Merge pull request #1663 from vsaulue/fix-doxygen
Fix some Doxygen comments in btMatrix3x3.
2018-05-16 17:02:23 -07:00
erwincoumans
4c4cf11667 Merge pull request #1687 from erwincoumans/master
fix VR controllers only visible in one eye
2018-05-16 14:53:06 -07:00
erwincoumans
b432daed65 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2018-05-16 12:11:29 -07:00
erwincoumans
0ca2c5f925 use Bullet3Common/b3AlignedObjectArray.h instead of LinearMath version in SharedMemory/PhysicsClientSharedMemory 2018-05-16 12:10:34 -07:00
erwincoumans
f99260413d Merge pull request #1684 from erwincoumans/master
BulletInverseDynamics: Fix propagation of user_int and user_ptr when …
2018-05-16 09:08:30 -07:00
Erwin Coumans
703767c6f3 BulletInverseDynamics: Fix propagation of user_int and user_ptr when creating MultiBodyTree.
The user_ptr and user_int arguments passed to addBody were stored in the cache, but not propagated to the MultiBodyTree when finalizing it.

Thanks to Thomas Buschmann for the fix.
2018-05-14 07:34:49 -07:00
Lunkhound
4254837170 solvers: remove erroneous 'break' statement that can occur with incorrectly flagged objects; also added asserts to warn when incorrectly flagged objects are detected 2018-05-12 19:54:39 -07:00
Lunkhound
8d5cd1c324 constraint solvers: fix crash for collision-bodies with incorrect flags 2018-05-11 17:47:08 -07:00
Lunkhound
ded33f3e7e parallel solver: remove bad assert 2018-05-06 23:39:01 -07:00
erwincoumans
bdd7d3c2c0 Merge pull request #1662 from sponji/master
Fixed a collision check bug with CCD
2018-05-03 06:40:22 -07:00
erwincoumans
0e2d0fda1a Revert back to using the Jacobi method to diagonalize a symmetric matrix. 2018-05-03 06:03:52 -07:00
Vincent Saulue-Laborde
0a2f3057d7 Fix some Doxygen comments in btMatrix3x3. 2018-05-02 20:10:53 +02:00
Teemu Patana
cfa3a6d2aa Fixed a collision check bug with CCD 2018-05-02 20:22:12 +03:00
Erwin Coumans
988d78cb61 enable btMultiBodyGearConstraint positional error correction
fix multibody debug drawing of joint frames
2018-05-01 17:40:26 -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
erwincoumans
391b0e4061 Merge pull request #1588 from GaborPuhr/Fix-#1582
Fix for #1582
2018-04-12 13:32:51 -07:00
erwincoumans
25cb37a0d7 Merge remote-tracking branch 'bp/master' 2018-04-12 12:48:37 -07:00
Erwin Coumans
11008d8110 fixes, backwards compatibility 2018-04-12 09:28:30 -07:00
erwincoumans
b53facfc25 Merge pull request #1629 from erwincoumans/master
Preparation to add signed distance field collision detection.
2018-04-12 00:02:25 -07: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
9ab03057ea add btMiniSDF and btSdfCollisionShape to CMakeLists.txt 2018-04-08 21:25:38 -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
Ju-Hyung Lee
00affd62ac Fix to support different kind of wheel axis 2018-04-04 12:31:52 +09:00