Commit Graph

90 Commits

Author SHA1 Message Date
Erwin Coumans (Google)
8f94ced88a improve Linux OpenGL 3.x context creation handling, don't crash if the shadowmap shader fails
add cursor-key support for Linux
2014-06-24 15:43:04 -07:00
Erwin Coumans (Google)
3480cb5eee fix Linux build 2014-06-24 11:33:00 -07:00
Erwin Coumans
68f798a2da Start re-organizing demos so the physics setup can be shared easier (explicit create graphics objects, init/exit physics etc)
Add B3G_RETURN key code, only implemented in Windows so far (todo: Mac, Linux)
Fix Windows key management (use WM_CHAR event instead of WM_KEYUP
Add Return (OnKeyReturn) key support TreeNode, so we can select an item using the return key.
2014-06-24 10:14:06 -07:00
Erwin Coumans
7f300a877f fix some btgui issues on Mac OSX 2014-05-20 14:43:19 -07:00
erwin coumans
eb74688c18 Add setUserIndex/getUserIndex (int index) to btCollisionShape
Share physics setup of BasicDemo between different graphics frameworks, see Demos\BasicDemo\BasicDemoPhysicsSetup.*
Plan is to do this for all Bullet demos.
Improve gwen performance and cursor navigation for tree control.
tweak shadowmap size
SimpleOpenGL3App::registerCubeShape accepts half extents
2014-05-20 12:02:01 -07:00
Erwin Coumans
f213b00022 fix BUILD_SHARED_LIBS and add it as an OPTION (cross fingers that CMake lets you expose existing vars as OPTION)
this should fix issue 176, thanks to Stephen Peters!
2014-05-19 20:50:10 -07:00
Erwin Coumans
3dd759c463 fix BT_USE_DOUBLE_PRECISION build, address Issue 177
https://github.com/bulletphysics/bullet3/issues/177
2014-05-19 14:53:11 -07:00
erwin coumans
01ce7a0288 remove a few unused variable, and add casts to avoid warnings 2014-05-16 08:59:34 -07:00
Erwin Coumans
934df75ea6 more fixes in the build, related to CMake and some error (don't delete a void* pointer!)
revert BasicDemo.cpp to original Bullet 2.82 state
2014-05-13 21:52:46 -07:00
Erwin Coumans
dc491936a2 rename ObsoleteDemos back to Demos
fix some relative path issues for loading assets
2014-05-12 16:12:01 -07:00
Erwin Coumans
7cec30dede fix Linux build
optional Midi under Linux (ALSA/libasound)
2014-05-05 15:37:02 -07:00
Erwin Coumans
c1940169bc workaround of premake for link error on Ubuntu/Linux, see
https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-319/+bug/1248642
2014-05-05 13:47:00 -07:00
Erwin Coumans
a3369e2d14 minor fix in GL3+ rendering 2014-04-12 19:53:44 -07:00
erwincoumans
5dafea7c06 avoid allocations in renderer (messes up AMD buggy OpenGL driver)
add missing file in cmake build system (BroadphaseCollision/b3GpuParallelLinearBvhBroadphase.cpp and BroadphaseCollision/b3GpuParallelLinearBvh.cpp)
2014-04-09 21:23:22 -07:00
xantares
477cfc6fe6 Fix linux|mingw shared|static build 2014-04-09 08:59:09 -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
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
3768a30bb2 added very crude little LuaDemo, to create physics objects using Lua scripts (very preliminary) 2014-02-06 01:13:31 -08:00
Erwin Coumans
ed12452fe6 update stringify_linux.sh and make shader filename case sensitive correct 2014-02-04 15:45:24 -08:00
Erwin Coumans
183901dc57 remove OpenGL 2.x call, it breaks Mac OSX 2014-01-29 15:47:02 -08:00
erwin coumans
ec4292ad75 add basic test texture 2014-01-17 22:19:12 -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
e1a412454f fixes to improve demos a bit 2014-01-07 16:06:13 -08:00
erwincoumans
ed73bce9da Move Bullet 2.x demos in a single demo 'AllBullet2Demos', for now only BasicDemo and FeatherstoneDemo is implemented. 2014-01-05 21:58:30 -08:00
Erwin Coumans
999c5ff766 fix Mac OSX version of preparation of AllBullet2Demo collection 2013-12-19 22:23:50 -08:00
erwin coumans
12dd0daebc prepare for Bullet 2 demo collection 2013-12-19 22:14:37 -08:00
Erwin Coumans
33889a3dc9 Merge branch 'master' of https://github.com/erwincoumans/bullet3 2013-12-13 08:40:18 -08:00
Erwin Coumans
f9c22b61af fix Mac OSX build 2013-12-13 08:40:05 -08:00
erwin coumans
ba2ba28a89 add Bullet 2.x CPU FeatherstoneMultiBodyDemo 2013-12-09 14:16:51 -08:00
erwincoumans
fca6d11381 created new Bullet 2 CPU BasicDemo, using the OpenGL 3 rendering. I will add picking soon. Hold ctrl/alt + mouse to move/zoom camera
remove reference to btGImpact (it is removed now)
2013-12-06 17:48:58 -08:00
erwincoumans
8f3051fdf1 add ImplicitCloth demo, by Stan Melax
add SimpleOpenGL3App, used in ImplicitCloth demo. The Bullet 3.x demos should use this as a template, it will clean up some of the mess.
2013-11-09 12:12:33 -08:00
erwincoumans
a6bc61ad1a tweaked the particle demo a little bit 2013-11-08 23:21:01 -08:00
erwincoumans
82a6855f9e fix OSX build 2013-11-05 14:09:35 -08:00
erwincoumans
8faac34801 move ExplititEuler cloth solver to its own file, so it can be replaced by PDB, implicit euler etc
add wireframe toggle ('w' key)
add --paused command-line option to start simulation in paused mode
render cloth using drawPoints method
2013-09-06 18:09:35 -07:00
erwincoumans
ef42c17143 add drawPoint/drawLine (both slow) and drawPoints (faster) to GLInstancingRenderer, with GLSL shaders 2013-09-06 12:05:56 -07:00
erwincoumans
181a323631 move b3RaycastInfo.h so it can be used without OpenCL dependency
add b3Assert to make sure m_maxShapeCapacityInBytes is not exceeded in GLInstancingRenderer
prepare for CpuSoftClothDemo
2013-09-02 22:31:48 -07:00
erwincoumans
0ccb6922a8 more work towards CPU version 2013-08-30 08:06:46 -07:00
erwin coumans
2c019d579f reduce memory allocation, lack of GPU memory totally destroys performance on my GTX 650M on the Macbook retina
add some keys to toggle gui drawing and shadows
2013-08-22 23:15:37 -07:00
Erwin Coumans
d860e7f51a fix Mac OSX build (compound-compound still broken on OSX)
remove operator= from b3Vector3 to make it POD/Plane Old Data
2013-08-20 12:45:05 -07:00
erwincoumans
677722bba3 support compound versus compound collision shape acceleration on GPU, using aabb tree versus aabb tree.
Remove constructor from b3Vector3,  to make it a POD type, so it can go into a union (and more compatible with OpenCL float4)
Use b3MakeVector3 instead of constructor
Share some code between C++ and GPU in a shared file: see b3TransformAabb2 in src/Bullet3Collision/BroadPhaseCollision/shared/b3Aabb.h
Improve PairBench a bit, show timings and #overlapping pairs.
Increase shadowmap default size to 8192x8192 (hope the GPU supports it)
2013-08-20 03:19:59 -07:00
erwincoumans
3bf003ace1 change lcpp Lua preprocessor, to keep #defines and comments, remove empty lines
remove duplicate data in b3Contact4 (now in btContact4Data shared between CPU/C++ and OpenCL)
OpenCL kernels use #include "Bullet3Collision/NarrowPhaseCollision/shared/b3Contact4Data.h"
Increase number of batches back to 250 (from 50), need to fix this hard coded number (see https://github.com/erwincoumans/bullet3/issues/12)
Work towards GJK/EPA, in addition to SAT/clipping (early on)
2013-08-08 12:24:09 -07:00
erwincoumans
906415429c added (and stripped) a simple C/C++ preprocessor (written in Lua), so the stringifier can handle the #include directive,
and embed the included files directly in the stringified files.
We need this, because we start sharing struct definitions and code between C/C++ and OpenCL (and potentially other languages)
preprocessor is from http://github.com/willsteel/lcpp
2013-08-01 21:05:19 -07:00
erwincoumans
1c0fc6bc2d report when compound pair capacity is exceeded (and avoid crash)
add tetrahedron, reorganized demos
2013-07-30 17:00:50 -07:00
erwin coumans
2793a174c6 added fracture scene .bullet file (doesn't work well yet)
added tetrahedral mesh test scene
expose b3Config as member variable for demos.
move a 'glFlush' out of the innerloop (render performance)
SSE -> SSE2 in premake
fix crash in broadphase (when no aabb's exist)
2013-07-30 12:37:16 -07:00
erwin coumans
310d31f3d5 tweaks to demos, add middle-mouse support, 2013-07-21 00:36:00 -07:00
Erwin Coumans
0399b55e1c add modifier support for Mac 2013-07-18 17:29:27 -07:00
erwincoumans
392347b202 use Control or Alt under Linux for Maya style mouse control (Ubuntu hijacks Alt) 2013-07-18 16:28:41 -07:00
erwincoumans
a5b73e7c76 use Syoyo Fujita's Wavefront obj loader. made some performance improvements in debug mode for Visual Studio
use Maya style controls under Windows (need to fix Linux/OSX) use ALT+mouse to rotate, and mouse pick to pick objects
2013-07-18 15:55:38 -07:00
erwin coumans
1e31073f4b made the simulation deterministic
disable 'simdwidth' optimization for determinism (need to double-check)
made the spatial batching 3D
2013-07-14 19:16:33 -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