Erwin Coumans
a9d4184e2d
fix Mac version of cloth rendering
2013-06-03 17:35:31 -07:00
erwin coumans
5317b7d0c2
add do-while to logging functions, to avoid errors in user code: if b3Error("msg"); else {...} would fail before
2013-06-03 15:39:47 -07:00
erwin coumans
76b0d7697a
Added b3Printf, b3Warning and b3Error that can be re-routed to custom handlers.
...
See in src/Bullet3Common/b3Logging.h for details
2013-06-03 13:10:27 -07:00
erwin coumans
70b4ead641
remove some warnings
2013-06-03 10:16:50 -07:00
erwin coumans
a886a978b7
add preliminary GPU ray cast (brute-force slow, only against sphere, allocates OpenCL buffers at every cast)
2013-05-28 18:39:53 -07:00
Erwin Coumans
a92223890f
improve Mac OSX/Unix benchmark
2013-05-23 20:38:27 -07:00
Erwin Coumans
084bc4ec32
improve the benchmark mode, with 2 files (csv and details)
2013-05-23 18:34:39 -07:00
erwincoumans
98a877a80d
enable alignment macros for Linux
2013-05-22 17:59:13 -07:00
erwincoumans
ee5195d3e8
fix padding issue under Linux (where b3Vector3 is not 16-byte aligned)
...
w
2013-05-22 17:46:47 -07:00
erwin coumans
9365735a8f
fix clew/Windows build (disable CL/GL sharing)
2013-05-21 16:58:03 -07:00
erwin coumans
d25e21614a
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2013-05-21 16:47:23 -07:00
erwincoumans
29e70b2802
Add option to use clew to manually open the OpenCL dynamic library
...
fix Linux build of App_Bullet3_OpenCL_Demos. Unfortunately the simulation doesn't work properly, need to fix it
(and add unit tests)
2013-05-20 17:58:19 -07:00
erwincoumans
453952f202
fix Linux build (only OpenCL/gwen tested)
2013-05-20 16:53:43 -07:00
erwin coumans
2ec9599c87
fix duplicate link symbol when used with Bullet 2.x
2013-05-15 16:22:10 +02:00
erwin.coumans
92eed617cd
fix SSE issue with XCode 3
2013-05-14 12:38:06 +00:00
erwin coumans
4877a2af8a
enable CPU joint (non-contact) constraint solver in GPU rigid body pipeline
...
small change to BasicGpuDemo
2013-05-08 15:55:02 -07:00
erwin.coumans@gmail.com
542c53fb30
Don't pass along unused btStackAlloc everywhere. The API change might user code (derived classes with the old virtual method are not called anymore)
2013-05-08 22:45:35 +00:00
erwin.coumans@gmail.com
329b9a1e3c
Avoid collision response between non-dynamic bodies, introduced in a recent commit.
...
Fixes Issue 711 https://code.google.com/p/bullet/issues/detail?id=711
Thanks to Sergej Reich.
2013-05-08 21:07:35 +00:00
erwin coumans
26873328cf
gridtable needs to be in the __constant memory space
2013-05-03 11:38:23 -07:00
erwin coumans
1185de51d5
experiment with first-level batching using object index instead of spatial hash in uniform grid (to avoid tuning average object size for uniform grid)
2013-05-03 01:14:34 -07:00
erwin coumans
6ee9eb9bb5
fix bug in assignment of contact constraints to solver grid (always use dynamic body to determine constraint assignment, otherwise write conflicts can occur)
...
implement CPU version of narrowphase convex collision, for comparison/debug purposes
start towards cpu/gpu sync, for adding/removing bodies (work in progress)
2013-05-02 09:49:16 -07:00
erwincoumans
e999903c15
resolve some naming conflicts between Bullet 3.x and Bullet 2.x
...
add BasicGpuDemo that bridges Bullet 2.x and Bullet 3.x (still preliminary/crashing/instable)
2013-04-30 18:17:44 -07:00
erwincoumans
92f0938af3
add bitonic sort, as comparison.
...
fix stringify.bat for Windows (need to fix Mac/Linux version too)
2013-04-30 11:40:09 -07:00
erwincoumans
3ac332f3a7
reorder files, in preparation for Bullet 3 -> Bullet 2 merge
2013-04-29 19:04:08 -07:00
erwincoumans
55b69201a9
rename to b3 convention, to avoid naming conflicts when using in combination with Bullet 2.x
2013-04-29 15:19:36 -07:00
erwin coumans
7366e262fd
bt -> b3 and BT -> B3 rename for content and filenames
2013-04-28 23:11:10 -07:00
erwin coumans
f943204aa2
add .bullet loader for GPU demo
2013-04-23 16:07:17 -07:00
erwin coumans
66e5dcf65a
add joint/constraint solver support (using CPU, Bullet 2.x solver), in combination with GPU contact solver
2013-04-23 12:03:55 -07:00
erwin.coumans@gmail.com
9abd0b6029
Sorry for the lack of updates, I am preparing Bullet 3.x initial release and get back to merging Bullet 2.x and Bullet 3.x afterwards.
...
fix some crash in btSoftBody, related to running out-of-memory. You can configure the default maximum memory allocation for the signed distance field using worldInfo->m_sparsesdf.Initialize(hash, maxAllocation);
fix 'exploding' btSoftBody, related to very small masses. You can configure maximum displacement per frame using worldInfo->m_maxDisplacement
avoid some crash in the world importer
2013-04-22 19:00:58 +00:00
erwin coumans
dc1984713a
add option for btDbvtBroadphase (comparison)
2013-04-20 23:59:00 -07:00
erwin coumans
9ecd898c34
re-introduce Bullet 2.x solver, in Bullet3Dynamics/ConstraintSolver/b3PgsJacobiSolver.*
...
move b3Contact and b3RigidBody
2013-04-18 23:28:13 -07:00
erwin coumans
626f0cf1e3
bt->b3
2013-04-17 17:52:51 -07:00
erwin coumans
3cb80ad1a3
more bt->b3*
2013-04-16 17:13:38 -07:00
erwin coumans
e646754228
more bt* to b3*
2013-04-16 17:08:59 -07:00
erwin coumans
4a93c2e704
x() -> x or getX() or [0]
...
y() -> y or getY() or [1]
z() -> z or getZ() or [2]
w() -> w or getW() or [3]
make sphere-convex and sphere-compound collision work (still issues remaining)
2013-04-03 18:27:36 -07:00
erwin.coumans
33688fc011
removed name from source code
2013-04-02 18:33:00 +00:00
erwin.coumans@gmail.com
e8c2475c95
Added a gCompoundChildShapePairCallback to filter (enable/disable) child shape collisions for a btCompoundShape.
...
Thanks to Rich McDaniel for the patch.
See MyCompoundChildShapeCallback in Demos/ConvexDecompositionDemo/ConvexDecompositionDemo.cpp for usage.
2013-04-02 02:01:43 +00:00
erwin.coumans@gmail.com
1f4f8c7e05
Workaround for sticky convex collisions when using GJK/EPA in combination with very small collision margins.
...
In some degenerate cases the contact normal is pointing the wrong direction
so fix it now (until we can deal with all degenerate cases in GJK and EPA)
contact normals need to point from B to A in all cases, so we can simply check if the contact normal really points from B to A
We like to use a dot product of the normal against the difference of the centroids,
once the centroid is available in the API
until then we use the center of the aabb to approximate the centroid
2013-04-02 00:32:18 +00:00
erwin coumans
9c0ca25cf6
add preparation for btGpuJacobiSolver
2013-03-25 17:13:53 -07:00
erwin coumans
39884e4665
more compile fixes
2013-03-20 00:33:21 -07:00
erwin coumans
d8a3732306
fix demo/gpudemo build
2013-03-13 13:22:56 -07:00
erwin coumans
7c0824665c
add Bullet 2.x files (renamed/split LinearMath into BulletCommon and BulletGeometry
2013-03-13 00:01:55 -07:00
erwin.coumans
976cd0028a
Add a missing header file btCollisionObjectWrapper.h
...
Thanks to Alexander Meissner
Fixes Issue 684
2013-01-03 18:51:20 +00:00
erwin.coumans
02a22f6329
Avoid using SSE in API when BT_USE_SSE_IN_API is not defined
...
Fixes Issue 683.
2012-12-20 22:09:59 +00:00
erwin.coumans
0c555a5afe
just use 16-byte aligned data for solverbody, not 64byte
...
fixes Issue 659
2012-12-17 21:29:20 +00:00
erwin.coumans
7e14e79da0
Fix Issue 680, compilation error using Visual Studio 2005, service pack 1, quicksort compare function needs to be in a class.
...
Toggle between GJK and SAT (initializePolyhedralFeatures) in convexDecomposition at easch restart of the demo (spacebar)
2012-12-17 20:38:31 +00:00
erwin.coumans
c4548ec746
Add a helper method that creates a btCompoundShape from a btGimpactMeshShape, for more robust collision detection.
...
The idea is to create tetrahedra from each surface triangle, by moving its centroid inwards along the collision normal using depth.
If the centroid hits an internal triangle, it will stop there.
The commit also includes part of the gimpact raycast performance improvement, except for the actual btCollisionWorld part
(that file was out-of-date and needs manual patching)
2012-12-14 23:14:09 +00:00
erwin.coumans
27fd8ea0d7
make it more obvious that btBvhTriangleMeshShape cannot be used for moving objects.
2012-12-14 20:31:03 +00:00
erwin.coumans
1d4a5d950d
Usually m_contactNormal2 == -m_contactNormal1, but not always, so
...
use a separate contactNormal1/contactNormal2 for each body in btSolverConstraint.
Thanks to Richard McDaniel for the patch.
2012-12-12 23:21:51 +00:00
erwin.coumans
7c610ec045
use unsigned int indices in btGImpactMeshShape
...
See Issue 663
2012-12-07 19:20:06 +00:00