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
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
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
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
erwincoumans
161c48d331
work-in-progress Bullet 3.x GPU raytest
...
work-in-progress P2P constraint for b3GpuDynamicsWorld
2013-06-17 13:47:35 -07:00
erwin coumans
31282ab85e
don't crash if the maximum number of pairs is exceeded, but report an error using b3Error
2013-06-17 13:23:41 -07:00
erwin coumans
f73d11d896
tweak default values of b3Config.h so some laptop GPUs can run 128k scenes
...
return the result of resize
use size_t instead of int for btOpenCLArray
BasicInitialize demo will test how much memory can be allocated, using the btOpenCLArray
2013-06-14 12:10:16 -07:00
erwincoumans
02a858e7c1
pass in b3Config
2013-06-08 11:32:29 -07:00
erwin coumans
100449d76f
faster scene construction when not using instancing (avoid copy individual vertices/shapes to GPU, but do it afterwards in a batch), copy GPU data in 'writeAllBodiesToGpu' method
...
add option --no_instanced_collision_shapes, this only applies to the 2 benchmark screnes at the moment
always use the user specified b3Config file, so the settings can be set at runtime, not just at compile time
adjust default constants in b3Config (needs more tweaking, ideally at run-time)
2013-06-08 11:08:44 -07:00
erwin coumans
3f10082aa3
add missing rayCast kernel
2013-06-07 20:47:47 -07:00
erwincoumans
9fe48d887d
b3GpuDynamicsWorld improvements:
...
apply forces
copy linear/angular velocity every frame at the CPU side, initial velocity works now
hook up setGravity
Note: the 'stepSimulation' for GPU only simulates a single simulation frame.
2013-06-06 22:01:06 -07:00
Erwin Coumans
b36eba864f
start with box-plane for benchmarking
2013-06-04 05:28:01 -07:00
erwin coumans
ff3c79b900
Merge branch 'master' of https://github.com/erwincoumans/bullet3
2013-06-03 17:58:15 -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
31e0d0fd38
add support for motion state and internal pre-tick callback
2013-06-03 15:17:06 -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
f55473d586
GpuRaytraceScene work-in-progress, CPU only at the moment.
2013-05-27 00:42:28 -07:00
Erwin Coumans
a3559b3c92
add preliminary ray tracing test (ray-sphere placeholder on CPU)
2013-05-25 01:45:43 -07:00
Erwin Coumans
084bc4ec32
improve the benchmark mode, with 2 files (csv and details)
2013-05-23 18:34:39 -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
erwin coumans
2ec9599c87
fix duplicate link symbol when used with Bullet 2.x
2013-05-15 16:22:10 +02: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
erwincoumans
25fe5f4a77
prepare for GPU cloth/softbody
2013-05-06 18:35:34 -07:00
erwin coumans
b882211769
fix Linux build for enet test
2013-05-04 21:30:51 -07:00
erwin coumans
818a78efe3
enet NAT punchthrough test improvement, seems to work fine for my test setup
2013-05-04 21:28:51 -07:00
erwin coumans
c0a1ad8fcd
add enet test for remote visual debugger
2013-05-04 19:50:56 -07:00
erwin coumans
26873328cf
gridtable needs to be in the __constant memory space
2013-05-03 11:38:23 -07:00
erwin coumans
09ddf554e4
patch to make Bullet 2.x bridge work (should be applied soon)
2013-05-03 09:25:57 -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
de17d6044c
add missing premake file
2013-05-01 10:14:37 -07:00
erwin coumans
3438d1c8f6
compute actual local workgroup size, instead of a hard-coded value
2013-05-01 10:04:56 -07:00
erwincoumans
6d21d10cb4
add a temporary Bullet 2.x patch to make the Gpu demo work
2013-04-30 18:21:21 -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
bf7a779562
fix crash in Test_BitonicSort
2013-04-30 12:40:55 -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
erwin coumans
a5bba9f792
disable missing tests
2013-04-29 22:25:12 -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
6bcb5b9d5f
tweaks in camera position in demo
2013-04-23 16:30:35 -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
dc1984713a
add option for btDbvtBroadphase (comparison)
2013-04-20 23:59:00 -07:00
erwin coumans
a00af9d898
fixes to prepare for CPU dynamics bvh broadphase
2013-04-20 11:20:27 -07:00
erwin coumans
1179da4f9d
avoid crash when no tree data is available
2013-04-19 23:53:24 -07:00
erwin coumans
fbd192f360
allow multiple concave meshes, each with their own bvh
2013-04-19 23:30:29 -07:00
erwin coumans
dd315d164d
Merge branch 'master' of https://bitbucket.org/erwincoumans/bullet3_experiments
2013-04-19 18:30:24 -07:00
erwin coumans
d086090c77
only do gl2cl once
...
add contact stats option
re-enable a few more demos
2013-04-19 18:30:05 -07:00
erwin coumans
fd1b00965a
Merge branch 'master' of https://bitbucket.org/erwincoumans/bullet3_experiments
2013-04-18 23:28:48 -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
b883283460
add gpu_initialize demo (to display OpenCL devices using Gwen/OpenGL 3.x instead of Glut
2013-04-18 12:04:48 -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
faabffc23d
bt -> b3 rename
...
add docs
2013-04-15 18:26:09 -07:00
erwin coumans
76e74523f6
rename gpu_sat -> gpu_narrowphase
2013-04-15 12:43:46 -07:00
erwin coumans
ecf1752d68
fix resize problem with gwen OpenGLSample
2013-04-14 19:14:38 -07:00
erwin coumans
07b89beb39
bugfix for compound versus concave: compute the DeltaC2 after computing the (child) transforms for proper center
2013-04-12 13:02:35 -07:00
erwin coumans
ec0d2ed523
extend Wavefront obj loader to recognize objects (for compound shape creation)
...
add reproduction of a bug in compound versus concave trimesh
2013-04-12 10:25:11 -07:00
erwin coumans
467a68293b
fix convex-plane for > 4 vertices
...
improve compound demo
2013-04-10 00:03:02 -07:00
erwin coumans
e1a4400037
add support for compound hull against plane
2013-04-08 18:42:32 -07:00
erwin coumans
ce5652c26a
add convex versus plane contact generation
2013-04-08 15:14:39 -07:00
erwin coumans
0a721ce5a3
plane-convex prep
2013-04-08 09:09:29 -07:00
erwin coumans
c8fcf779bb
add support for compound hulls against concave triangle mesh
2013-04-05 18:29:58 -07:00
erwin coumans
358f4f97a2
add re-usable createGraphicsSphere method in GpuDemo.
...
introduce and use maxContactCapacity (needs to be fixed in various other contact kernels)
implement sphere versus trimesh
disable new/sequential GPU batching (only uses 1 thread in a warp, slow but works on NVIDIA/Apple OpenCL)
2013-04-04 17:54:45 -07:00
erwin coumans
733572e625
fix btQuaternion(1,0,0,0) ->fix btQuaternion(0,0,0,1)
2013-04-03 18:28:06 -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
8cee2e9b23
Merge branch 'master' of https://bitbucket.org/erwincoumans/bullet3_experiments
...
Conflicts:
btgui/OpenGLWindow/GLInstancingRenderer.cpp
2013-04-03 09:24:21 -07:00
erwin coumans
c2eb058e1f
minor fixes
2013-04-03 09:19:39 -07:00
erwincoumans
5c8c8e1cbb
implemented sphere-convex (supports edge and corner-vertex cases)
2013-04-02 22:09:40 -07:00
erwin coumans
e38c032280
fix GPU solver (need to clear .w component because "m_linear" contains friction coefficient
...
added a mixed solver to find bugs like that
2013-04-02 14:53:30 -07:00
erwincoumans
1ebcc78280
added GpuSphereDemo (broken on NVIDIA GPU)
2013-04-02 13:21:45 -07:00
erwincoumans
2aa2de45bc
Merge branch 'master' of https://bitbucket.org/erwincoumans/bullet3_experiments
...
Conflicts:
demo/gpudemo/GpuDemo.h
demo/gpudemo/main_opengl3core.cpp
2013-04-02 10:29:38 -07:00
erwincoumans
05def38809
nvidia compatibility
2013-04-02 10:28:51 -07:00
erwin coumans
cee546b51e
disable virtual midi gui
2013-03-30 15:57:59 -07:00
erwin coumans
8797524bd6
add RtMini test/library (works under Windows)
...
minor cleanups
2013-03-30 00:14:46 -07:00
erwin coumans
a1aa281622
more work towards GPU Jacobi solver.
...
Not fully working yet, GPU version shows explosion at high iteration count.
2013-03-27 21:40:26 -07:00
erwin coumans
2133712207
work-in-progress jacobi gpu (still broken :(
2013-03-27 19:09:23 -07:00
erwin coumans
b8c32a99cb
more work towards gpu split jacobi solver
2013-03-26 13:38:04 -07:00
erwin coumans
9c0ca25cf6
add preparation for btGpuJacobiSolver
2013-03-25 17:13:53 -07:00
erwin coumans
68062bdfbd
added Samurai Monastry wavefront .obj
...
added alternative batching kernel (slow)
tweaked controls a bit
added command-line options --selected_demo=<int> and --new_batching
started looking into parallel 3d sap
2013-03-23 23:00:50 -07:00
erwin coumans
11d934b63a
Merge branch 'master' of https://bitbucket.org/erwincoumans/bullet3_experiments
2013-03-22 16:27:13 -07:00
erwin coumans
07001d9861
add proper title
2013-03-22 16:27:00 -07:00
erwin coumans
8a6d71ad42
added Leo wavefront file
2013-03-22 16:24:09 -07:00
erwin coumans
47344ec500
expose gravity to host
...
prettify convex demo
2013-03-22 14:14:54 -07:00
erwin coumans
12700a7cd4
added CompoundDemo
2013-03-21 17:36:52 -07:00
erwin coumans
b4f9416cdf
add support for BVH acceleration for concave trianglemesh collision against convex hulls
...
bugfix/improvement in batching
2013-03-20 23:37:34 -07:00
erwin coumans
9a693fb850
make bvh kernel work on AMD GPU (and reported an OpenCL compiler bug)
...
enable source-level OpenCL debugging of a single kernel
2013-03-20 13:54:00 -07:00
erwin coumans
39884e4665
more compile fixes
2013-03-20 00:33:21 -07:00
erwin coumans
a36a37eb55
fix build
2013-03-20 00:30:11 -07:00
erwin coumans
085d705645
more work towards GPU bvh traversal
2013-03-19 23:11:19 -07:00