erwincoumans
be889f5eff
Merge pull request #159 from xantares/master
...
Fix linux|mingw shared|static build
2014-04-09 11:14:58 -07:00
erwincoumans
6cc5311216
Merge pull request #160 from rtrius/plbvh_raycast
...
Plbvh raycast
2014-04-09 11:14:34 -07:00
xantares
aafbf48130
Fix linux|mingw shared|static build
2014-04-09 10:33:22 +00:00
erwincoumans
aa76b88936
Added btSoftBodyHelpers::ReoptimizeLinkOrder(btSoftBody* softBody) method, to help improve performance for modern out-of-core CPUs.
...
It is tested in Aero2 demo (13) of AppSoftBodyDemo. Note that the cloth in Areo2 is not expensive enough to see benefits. Increase segments to see benefits.
Thanks a lot for the contribution.
2014-04-08 09:45:09 -07:00
erwincoumans
050c7d9289
allow to disable 'useMpr' without crash
2014-04-08 09:05:02 -07:00
Erwin Coumans
01fe7159d9
Added CMake support to compile App_Bullet3_OpenCL_Demos
2014-03-24 15:44:45 -07:00
Erwin Coumans
35c916f487
add CMake support for AppAllBullet2Demos demo. See also https://github.com/bulletphysics/bullet3/issues/43
2014-03-24 13:18:24 -07:00
Jackson Lee
26bcff31f7
Add overlapping pairs validation to PairBench.
2014-03-19 22:35:23 -07:00
Erwin Coumans
cfb06f9cd3
make GLUT optional in cmake
...
fix for btMultiBody to avoid extreme energy gain
2014-03-17 23:58:03 -07:00
Jackson Lee
b709d6beeb
Clean up plbvhCalculateOverlappingPairs kernel.
...
Also fix overlapping pair generation with triangle mesh.
(Currently, large/concave AABBs must be the first entry in a pair.)
2014-03-14 13:55:22 -07:00
Jackson Lee
f324e66f86
Add access to overlapping pairs b3OpenCLArray.
2014-03-13 21:27:15 -07:00
Jackson Lee
19b194e8fe
Fix PLBVH symmetry optimization for calculateOverlappingPairs().
2014-03-13 19:22:05 -07:00
Jackson Lee
bb0102d79b
Add PLBVH documentation/slides.
2014-03-13 13:52:49 -07:00
Jackson Lee
1b85dad6b4
Fix PLBVH raycast when only 1 small AABB is added to the tree.
2014-03-11 17:43:29 -07:00
Jackson Lee
db02ced606
Clean up PLBVH construction, add comments.
2014-03-11 14:13:09 -07:00
Jackson Lee
038364ccdd
Merge various commits into a single commit.
...
Commits after:
2014-03-03 Draft PLBVH construction using binary radix tree.
f19f853685
Are merged into a single commit; this includes:
03-10 Remove single launch build AABB kernel.
03-10 Add kernels for setting PLBVH AABBs using distance from root.
03-10 Use faster morton code, remove convertChildNodeFormat kernel.
03-09 Add duplicate morton code handling to binary radix construct.
03-09 Remove slower PLBVH constructors.
03-08 Add binary radix tree construct using binary search.
03-06 Remove slowest PLBVH constructor, fix implicit construct AABB.
03-04 Test various optimizations for PLBVH binary radix tree construct.
2014-03-10 15:33:47 -07:00
Erwin Coumans
9f92232640
fix CMake build
...
w
2014-03-06 13:46:25 -08:00
Jackson Lee
f19f853685
Draft PLBVH construction using binary radix tree.
2014-03-03 14:33:53 -08:00
Jackson Lee
4dcd52c090
Add only small AABBs to PLBVH, add large AABB support.
2014-02-26 15:38:59 -08:00
Jackson Lee
28da87dfc7
Split PLBVH files into .h/.cpp.
...
Also move PLBVH binary tree construction into separate function.
2014-02-26 15:20:12 -08:00
Jackson Lee
fe12ad9c9b
Fix PLBVH with 0/1 nodes, fix optimized ray-AABB intersect.
2014-02-26 14:56:43 -08:00
Jackson Lee
c782f4976c
Various minor PLBVH related changes.
...
-Use most significant bit instead of negative for internal nodes.
-Explicitly store root node index, so that it does not have to be 0.
-Check the root node first in PLBVH traversal.
-Fix rigid body clipping in RaytracedShadowDemo.
2014-02-24 23:50:20 -08:00
erwin coumans
d485f2b272
btMultiBodyConstraintSolver writes back the applied impulse for contact points
...
(added some debugging output for this in the demos, commented-out by default)
2014-02-24 16:55:54 -08:00
erwin coumans
dfa738c13a
Properly propagate the applied impulse for the MLCP solvers, so it will be available for contact and non-contact constraints.
...
Use real-time clock in AllBullet2Demos, rather than hard-coded 1./60.
2014-02-24 13:24:49 -08:00
Jackson Lee
e4fbd5332d
Accelerate GPU raycaster with PLBVH.
2014-02-23 20:40:58 -08:00
Jackson Lee
e955192971
Fix PLBVH reduction kernels, simplify nodes per level calculation.
...
Also calculate index ranges for each internal node.
2014-02-19 21:49:30 -08:00
Jackson Lee
7f0e361fa0
Use merged AABB to calculate grid cell size for PLBVH.
2014-02-18 19:59:05 -08:00
Jackson Lee
b7b7356af8
Draft Parallel Linear BVH Broadphase.
2014-02-18 19:23:25 -08:00
erwincoumans
122ceacb6d
move OpenCL initialization for the unit tests in a shared header file, and support some basic command-line arguments
...
--cl_device=1 --cl_platform=1 --allow_opencl_cpu
add chaindemo, test for mass ratios
restore sleeping/activation mode in featherstone demo
Use _VARIADIC_MAX=10 to avoid Google Test issues with Visual Studio 2012, thanks to Mobeen for the report
Enable verbose printf for unit tests
2014-02-11 10:33:00 -08:00
erwincoumans
bd5c2ff5ec
batching reports the size of the batches, and solver uses this as termination condition, giving a good speedup
2014-02-07 06:28:15 -08:00
Erwin Coumans
db188990fc
ftello64 -> ftell and fopen64 -> fopen (to make Mac OSX happy)
...
disable some warning (no idea why weak_link is there)
2014-02-04 14:52:57 -08:00
Erwin Coumans
2a87706114
Revert "fix Mac OSX build (and remove 'weak link' warning)"
...
This reverts commit 146bbefc03 .
2014-02-04 14:44:16 -08:00
Erwin Coumans
146bbefc03
fix Mac OSX build (and remove 'weak link' warning)
2014-02-04 14:05:21 -08:00
Erwin Coumans
94db38358c
add zlib/minizip so we can load compressed data (github/git is bad in handling large binary files)
2014-02-04 13:39:55 -08:00
Erwin Coumans
e4e2cb0d39
fix alignment issue in a unit test
2014-02-04 10:36:34 -08:00
Erwin Coumans
7cf83a4be0
attempt to fix compile issue with Clang
2014-02-02 10:42:56 -08:00
Erwin Coumans
65cfcdb9ac
improve printf/warning/error on Mac OSX
2014-01-31 15:05:13 -08:00
erwincoumans
863ac2c477
add unit tests for OpenCL kernel compilation for all Bullet 3 kernels (using GoogleTest)
2014-01-31 20:41:13 -08:00
erwincoumans
51036713f0
Initialize 64bit user pointer, thanks to AndresTraks
...
See https://github.com/erwincoumans/bullet3/issues/33
2014-01-29 05:47:45 -08:00
erwincoumans
31998c8e7d
minor issues (don't use \n in B3_PROFILE, and don't report timing inaccuracy in console
2014-01-29 15:25:36 -08:00
erwincoumans
3e8b183587
Avoid breaking up the clipHullHull kernel, it ruins performance. Unfortunately, Mac OSX still requires it.
...
Use indices instead of copies for small/large aabbs in broadphase (grid / sap)
2014-01-29 15:20:20 -08:00
erwincoumans
ff051f87aa
replace 'copy' step of large/small Aabbs by indices
2014-01-29 12:52:31 -08:00
erwin coumans
33ebebd1c9
allow PairBenchmark to select broadphase type, with cpu brute-force, gpu brute-force etc
...
fix issue in PairBench, related to index offset
allow to add a large AABB in PairBench, to see the effect on the broadphase pair search performance
2014-01-28 17:11:56 -08:00
Erwin Coumans
71f0537c6e
add Bullet 2.x constraint solver tests for hinge, with large mass ratio
...
experiment with Midi controls in PairBenchmark to tune variables (will move it into a utility class, so every demo can easier use it in the future)
fix issue with broadphase, not initializing all pairs properly at pair array overflow
2014-01-28 10:25:04 -08:00
erwincoumans
7cdda65822
Experimenting with GUI in PairBench, still preliminary. Goal is to make it easier to add variables that can be tuned using GUI/gwen
...
Pre-compile PairBench OpenCL kernel
2014-01-26 11:27:20 -08:00
Erwin Coumans
1a507cca52
remove redundant/wrong glClear
...
always initialize mpr OpenCL kernels
add a second ragdoll to the demo
2014-01-16 19:18:06 -08:00
Erwin Coumans
6142bdca0a
brDefaultMotionState::getWorldTransform was wrong, in case of a non-identity centerOfMassOffset.
...
Thanks to Mathias for the report/fix.
2014-01-16 18:47:03 -08:00
Erwin Coumans
0ed7b5c508
adding check on low number of vertices fixes Mac OSX crash
2014-01-16 15:53:53 -08:00
Erwin Coumans
edb0c72166
enable MPR OpenCL for Mac OSX
2014-01-16 14:24:18 -08:00
Erwin Coumans
f14ec7b870
split the unitsphere search in a separate kernel, m_findSeparatingAxisUnitSphereKernel, hopefully it works on Mac OSX OpenCL now.
2014-01-16 14:19:43 -08:00