Commit Graph

192 Commits

Author SHA1 Message Date
erwin coumans
061f7173b8 compute best axis on host and OpenCL for 1-axis SAP, based on best variance 2013-07-12 20:46:43 -07:00
erwin coumans
74aa499ab6 fix b3GpuDynamicsWorld 2013-07-11 11:02:10 -07:00
erwin coumans
2aad8419b7 add support for picking, using point 2 point constraint
allow to remove constraints by unique id
added tiny wavefront loader, plan to use this instead of existing slow wavefront loader
2013-07-10 00:21:23 -07:00
erwin coumans
9610b369a3 fix constraint issue with b3GpuDynamicsWorld 2013-07-09 19:32:14 -07:00
erwin coumans
a3c2456c65 introduce b3GpuSolverConstraint and fix Windows build 2013-07-09 18:03:51 -07:00
erwincoumans
282e19171f fix Linux version of ConstraintDemo 2013-07-09 14:41:56 -07:00
erwin coumans
4a0d2847c4 allow to run each part of the GPU solver on CPU, for debugging purposes 2013-07-09 13:07:34 -07:00
erwin coumans
38bfcc859b fix linux build 2013-07-09 11:36:21 -07:00
erwin coumans
bd2cd7b2a7 remove clFinish and copyToHost from GPU joint solver, performance is looking better now. 2013-07-09 11:19:16 -07:00
erwin coumans
c4375a09e4 added GPU joint solver for non-contact constraints. Only point 2 point version for now, will add some other constraints soon (changes are very local) 2013-07-09 10:46:47 -07:00
erwin coumans
b8d5cecfe3 joint (non-contact constraint) solver iterations is now working on GPU, but overall slower because of data copy.
Will move joint setup to GPU, and then some benefit should be visible.
Don't use 64 alignment, it causes data structures size mismatch between cpu and gpu
2013-07-06 14:11:32 -07:00
erwin coumans
3ca4d68f3e added jointSolver.cl/h (not working yet) 2013-07-06 13:20:34 -07:00
erwin coumans
b18e03d737 work towards GPU joint solver (non-contact constraints), not working yet. 2013-07-06 13:11:13 -07:00
erwin coumans
3a6e1ccff4 work towards GPU joint solver (non-contact constraints), not working yet. 2013-07-06 13:08:58 -07:00
erwin coumans
01e5472f9f add b3FixedConstraint, with less memory footprint than b3Generic6DofConstraint, and easier to port to OpenCL.
remove the 'obsolete' part of b3Generic6DofConstraint and b3Point2PointConstraint
2013-07-06 00:44:06 -07:00
erwin coumans
956c3fc267 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2013-07-02 21:13:54 -07:00
erwin coumans
28f6e0fbd3 towards GPU joint (non-contact) constraint solving. The ConstraintDemo shows that CPU performance is very good, so not much performance win is to be expected. 2013-07-02 21:13:42 -07:00
Erwin Coumans
8faf5bca21 fix OSX build 2013-07-02 21:08:52 -07:00
erwin coumans
72042f3094 add basic constraint demo 2013-07-02 11:07:50 -07:00
erwin coumans
0f78c696b5 GWEN improvement: allow to navigate TreeControl and ComboBox using the cursor keys 2013-07-01 23:43:49 -07:00
erwincoumans
898f423f95 fix linux build 2013-07-01 09:45:12 -07:00
erwin coumans
6d6ef5d3dc fixed many memory leaks
added working shadows, using basic shadow mapping
2013-06-30 23:19:14 -07:00
erwin coumans
f2cc840c31 move shaders to .glsl files and stringify to .h file.
add crude screenshot facility (using F1 key), it can also be used for debugging
start with shadows using shadowmap, not working yet
add experimental 'ignore' body index in raycast, using b3HitInfo.m_m_hitResult2
2013-06-28 14:10:23 -07:00
erwin coumans
bb723f9fd1 remove some un-used data from b3Generic6DofConstraint
add GLRenderToTexture helper class
enable OpenGLTrueTypeFont test
2013-06-26 16:09:40 -07:00
a
34394526f8 fix osx version
See also https://github.com/erwincoumans/experiments/issues/11
2013-06-21 11:25:08 -07:00
erwincoumans
1d61530233 fix typo in premake file 2013-06-20 18:07:05 -07:00
erwincoumans
e39af46403 fix ray-convex header file 2013-06-20 16:41:11 -07:00
erwincoumans
d935eb2520 fixes in ray-convex for GPU 2013-06-20 16:27:36 -07:00
erwincoumans
47403c7e6f Merge branch 'master' of https://github.com/erwincoumans/bullet3 2013-06-20 12:55:35 -07:00
erwin coumans
92f2f330df fix OpenCL kernel: NVIDIA crashes in clBuildProgram and AMD reports an error 'irreducable flow detected" ?!?
ray-convex works on GPU
2013-06-20 11:50:19 -07:00
erwin coumans
330bf3ea09 start implementing ray-convex on GPU (work-in-progress) 2013-06-20 11:33:00 -07:00
erwin coumans
c959f32d7e added b3Clock/b3Quickprof files 2013-06-20 10:14:21 -07:00
erwin coumans
531af1b394 add ray-convex CPU implementation, make CPU raytest default for now
tweak/increase the b3Config values again, so it works better on the Macbook Retina GPU.
2013-06-20 00:29:09 -07:00
erwin coumans
a69ba48de4 Move b3Quickprof.* from Bullet 3.x src folder to btgui/Timing
The Bullet 3.x B3_PROFILE can be customized using b3SetCustomEnterProfileZoneFunc/b3SetCustomLeaveProfileZoneFunc defined in Bullet3Common/b3Logging,
so you can hook Bullet 3.x up to your profiler of choice.
The Demos3/BasicGpuDemo will show the Bullet 3.x timings inside the Bullet 2.x btQuickprof profiler.
2013-06-19 22:08:03 -07:00
erwincoumans
6acf4d03a7 add Raycast kernel to stringify_linux.sh 2013-06-19 17:29:31 -07:00
Erwin Coumans
7d79555f50 only disable fastscan in radix sort for __APPLE__, this should improve Linux performance (previously it went through the slower path under Linux) 2013-06-19 23:18:17 -07:00
Erwin Coumans
fa4394c378 remove bullet2.patch, the file is not necessary anymore.
You can use Bullet 3.x standalone, or you can use Bullet3+Bullet2 by checking out the source code of both repositories at the same location,
and then use premake --bullet2gpu gmake (or vs2010, xcode4) to generate the combined project, with App_BasicGpuDemo_* test app.
2013-06-19 23:14:02 -07:00
erwincoumans
221a8cf463 move binary to bin folder 2013-06-19 15:03:29 -07:00
erwincoumans
7561e6a4f9 move build to build3 to avoid naming conflict with Bullet 2.x
fix build error in BasicGpuDemo
Thanks to joen66 for the report here:
https://github.com/erwincoumans/bullet3/issues/5
2013-06-19 14:54:28 -07:00
erwincoumans
596cc95163 move files to correct location (case sensitive issue)
w
2013-06-19 14:35:16 -07:00
erwincoumans
13a4084adf Merge branch 'master' of https://github.com/erwincoumans/bullet3 2013-06-19 12:52:12 -07:00
erwin coumans
aa1c2db35a Add support for b3Generic6DofConstraint in Bullet, CPU only for now. Also the b3GpuDynamicsWorld supports conversion of this constraint.
This means, picking works both with and without holding SHIFT (rayTest is only implemented for spheres)
2013-06-19 12:28:51 -07:00
erwin coumans
f10eb86f55 enable the GPU ray test in BasicGpuDemo, only for spheres at the moment 2013-06-19 00:12:06 -07:00
erwin coumans
481d54967f Fixes in raycast (against sphere), point 2 point constraint
Picking test works, holding shift in App_BasicGpuDemo_*
2013-06-18 19:33:45 -07:00
erwincoumans
a81d847c24 Linux fixes 2013-06-17 22:45:59 -07:00
erwincoumans
227d88f553 fix Linux build 2013-06-17 21:57:04 -07:00
erwincoumans
41b49b6e18 use clew/clew.h path 2013-06-17 17:11:04 -07:00
erwincoumans
9a92eecf10 allow larger amount of rigid bodies, dynamically increase b3Config limits
avoid crashes in instancing renderer if instance maximum is exceeded.
2013-06-17 17:05:01 -07:00
erwincoumans
561a44e5d8 Try to avoid crashes if memory allocations fail
Deal with cases exceeding allocations of bodies/shapes above the limits set in b3Config
(work-in-progress )
2013-06-17 15:55:41 -07:00
erwincoumans
e179d5882e Merge branch 'master' of https://github.com/erwincoumans/bullet3 2013-06-17 13:47:41 -07:00