Commit Graph

672 Commits

Author SHA1 Message Date
ejcoumans
121fd7808e Changed BulletMultiThreaded Thread Support to be passed in, rather then global 'Win32ThreadSupport'/'Libspe2ThreadSupport' etc.
This allows developer to hookup Bullet to a custom task scheduler, by deriving from btThreadSupportInterface.
2007-07-09 03:21:33 +00:00
ejcoumans
5c80ff1f7d improved performance by adding constructors to btTransform/btMatrix3x3 to avoid conversions, compoundshape returns const references (instead of duplicate objects)
Thanks Marten Svanfeldt, Starbreeze Studios
2007-07-05 23:48:05 +00:00
ejcoumans
5f8873c339 support diamondsubdivision (thanks Jay for contribution)
support user-defined broadphase collision filtering (thanks Marten)
make sure btSimpeDynamicsWorld doesn't use cache friendly optimization in the solver (added an assert, and updated BasicDemo)
2007-06-29 22:13:15 +00:00
ejcoumans
e33f5390dd added patch from Marten Svanfeld to pass collision filter group/mask in addRigidbody. 2007-06-29 19:37:30 +00:00
ejcoumans
cad28a8b35 allow for float data, and prepare for 'quad edge flip', either re-use the first triangle vertex, or second (re-use index 00 or 01) 2007-06-27 19:56:18 +00:00
ejcoumans
9099d6bed5 updated vehicle demo to load heightfield data from file 2007-06-27 19:12:09 +00:00
ejcoumans
0ef218424c enable general drawing of concave meshes for heightfields/planes, not just trianglemeshes 2007-06-27 03:27:13 +00:00
ejcoumans
59cb275c9c basic support for height fields. They are producing temporary triangles, similar to the plane shape.
VehicleDemo demonstrates heightfield support.
2007-06-27 03:21:00 +00:00
ejcoumans
40a6009342 need to register 'triangle sphere' collision algorithm with types in right order.
Thanks Stephen Marshall for pointing this out.
2007-06-22 17:40:57 +00:00
ejcoumans
980f03dc3d upgrade to GIMPACT 0.2 2007-06-22 17:32:28 +00:00
ejcoumans
718b73371f removed 'processAllTrianglesBruteForce'
autogenerated new visual studio projectfiles
2007-06-14 13:06:05 +00:00
ejcoumans
f4d31a2dd8 unknown issue with dma size, need to investigate deeper (had to increase target buffer size to avoid crashes) 2007-06-13 23:18:04 +00:00
ejcoumans
effb5a8b62 added brute-force triangle iteration method, to allow graphics to skip aabb traversal (useful for debugging) 2007-06-13 22:35:14 +00:00
ejcoumans
a608d1ad47 Added sample code to enable parallel (multi threaded) dispatcher (disabled by default, see #define USE_PARALLEL_DISPATCHER) 2007-06-13 05:12:01 +00:00
ejcoumans
b098652911 offset the raytrace texture to make it visible on some systems 2007-06-01 20:28:23 +00:00
ejcoumans
b958c1fbcb 2007-06-01 02:09:39 +00:00
ejcoumans
cf2337ed7b - Fixed a bug in btAxisSweep3 (sweep and prune) related to object removal. Only showed up when at least one btStaticPlaneShape was inserted.
Thanks tbp for more details on reproducing case.
- Fixed issue with full 32bit integers in btAxisSweep3 (define BP_USE_FIXEDPOINT_INT_32), it used only 65536 for quantization, it should use full integer space (0xffffffff)
- Added 'getForwardVector' and getCurrentSpeedKmHour utility functions to btRaycastVehicle
- Fixed local scaling issues (btConvexTriangleMeshShape, btBvhTriangleMeshShape, removed scaling from btMatrix3x3). Thanks Volker for reporting!
- Added second filename search, so that starting BspDemo and ConvexDecompositionDemo from within Visual Studio (without setting the starting path) still works
2007-05-20 16:21:14 +00:00
ejcoumans
ceee6d7e14 renamed ${OPENGL_glU_LIBRARY} into ${OPENGL_glu_LIBRARY}
This allows MinGW32/MSYS makefiles (using cmake -G "MINGW Makefiles") to build (used to have a link error against gluLookAt etc)
2007-04-29 18:26:32 +00:00
ejcoumans
e1ba8839dc renamed ${OPENGL_glU_LIBRARY} into ${OPENGL_glu_LIBRARY}
This allows MinGW32/MSYS makefiles (using cmake -G "MINGW Makefiles") to build (used to have a link error against gluLookAt etc)
2007-04-29 18:22:44 +00:00
ejcoumans
2db8bfa3d6 Fix (needs more testing) in btRigidBody::setCenterOfMassTransform, assign m_interpolationWorldTransform = xform; instead of m_worldTransform;
Thanks Jay for reporting
Added braking capability to btRaycastVehicle, see Bullet/Demos/VehicleDemo/VehicleDemo.cpp
Added glutKeyboardUpFunc, for vehicle demo (keep accelerating/breaking, until key released/UP). Hope this is compatible with most GLUT implementations.
2007-04-22 15:23:20 +00:00
ejcoumans
bc3f9535ad cleaned up, removed warning under MSVC2005 (Level 4)
Mostly related to alignment and unused variables
2007-04-13 01:37:21 +00:00
ejcoumans
9546633ade Added 'cache friendly' tree traversal format, and traversal. Array of subtrees with specified maximum size. This is useful to fit tree traversals on SPU. 2007-03-27 21:02:45 +00:00
ejcoumans
3a09be8ea7 fix: timestep is not fixed by default 2007-03-21 16:16:13 +00:00
ejcoumans
4685f6acc8 Added a refit to the quantized stackless tree, with updated ConcaveDemo. 2007-03-21 02:45:43 +00:00
ejcoumans
c1a54d9edc Attempts to improve performance. Not much gain yet, but good to experiment what has effect and what hasn't.
Added 'DO_BENCHMARK_PYRAMID' to CcdPhysicsDemo.
2007-03-20 20:12:23 +00:00
sjbaker
c82f36fa34 Clean up some more compilation warnings. 2007-03-19 04:31:26 +00:00
sjbaker
6b102c65b3 Cleanup some trivial compilation warnings. 2007-03-19 04:27:59 +00:00
ejcoumans
897d1491fa enable aabb compression in ColladaDemo btTriangleMesh. 2007-03-12 23:20:41 +00:00
ejcoumans
054d672592 - removed STL from the Bullet library: replace std::vector by btAlignedObjectArray. Also removed the std::set for overlapping pair set, and turned it into an overlapping pair array. The SAP only adds objects, never removed. Removal is postponed for during traversal of overlapping pairs (duplicates and non-overlapping pairs are removed during that traversal).
- added heap sort and binary search/linear search to btAlignedObjectArray
- fixed wrong cast, thanks Hamstray, http://www.continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=1015
2007-03-06 09:59:17 +00:00
ejcoumans
f8b714cd42 disable scaling in collada converter, it doesn't give good results in most files. 2007-02-28 00:48:10 +00:00
ejcoumans
b73900bc60 Improved performance of convex collision shapes, cache local AABB instead of recomputation. This fixes issue with very slow performance in larger .bsp levels.
Moved some asserts into 'btFullAssert', which is disabled by default (see btScalar.h to enable them). This is to speed-up debugging.
2007-02-26 04:59:05 +00:00
ejcoumans
e610598d33 - Added compressed/quantized AABB tree, 16 bytes per node, while supporting 32-bit (triangle) indices. Should be faster and smaller then original version (quantized aabb check is done in integer space)
Original aabb nodes are 44 bytes (with full floating point precision and additional part index)
- added meter-unit scaling support in ColladaConverter.cpp
2007-02-25 06:11:23 +00:00
ejcoumans
bda1507ea9 added compound shape for raytrace testing 2007-02-14 05:25:11 +00:00
ejcoumans
a5bf6a1254 use solvermode 'randomized' and not warmstarting 2007-02-13 16:47:04 +00:00
ejcoumans
c4a83539ca terminate the cleaned filename with zero character, thanks to Jay for reporting this fix! 2007-02-13 16:12:20 +00:00
ejcoumans
7453af5dde more fixes in Collada Physics conversion, related to convex meshes and uninitialized mass data. 2007-02-01 02:51:59 +00:00
ejcoumans
8a98639d78 fixed a crashing bug (NULL strings) and change the viewing angle of default camera in the demo 2007-01-31 20:57:14 +00:00
ejcoumans
e8ca371a71 Workaround for bad PhysX Collada .dae export from Maya:
It seems whenever the <rigid_body> has <extra> 	<technique profile="PhysX"><kinematic>true</kinematic> this <rigid_body> should have <dynamic> false</dynamic>.
2007-01-31 03:22:52 +00:00
ejcoumans
581468ceec Added btCapsuleShape. This could already be simulated by simply adding 2 spheres to the btMultiSphereShape, but this was bad documented/unknown.
For tapered capsules, you can still use btMultiSphereShape, just pass 2 spheres with different radius.
2007-01-30 00:09:08 +00:00
ejcoumans
7b5301bb43 accept constraint with single rigidbody 2007-01-19 03:48:54 +00:00
sjbaker
e9b21e21a6 Pathnames between #include files that are intended to be used within application code should not depend on the paths to the subdirectories being known to the compiler because this will not always be the case when an end-user includes your headers.
Includes of files in the local hierarchy must not use <...> please stick with "..."
2006-12-26 15:33:28 +00:00
sjbaker
8d92ca34c2 Windows programmers: Beware! The case of the filename is significant in #include directives - even though the lame-ass M$ compiler doesn't check it. 2006-12-23 16:20:00 +00:00
ejcoumans
bba68d6072 work on buildsystem to allow double precision visual build setting in autogenerated visual studion projectfiles 2006-12-23 06:53:51 +00:00
sjbaker
db573e4a59 Clean up about a bazillion compilation warnings. 2006-12-22 02:33:42 +00:00
ejcoumans
4685bb8c4b added DoublePrecisionDemo, still needs review and autogenerated projectfiles/cmake/Jamefiles 2006-12-21 19:04:32 +00:00
ejcoumans
62c93b02bb fixed issue with missing COLLADA Physics asset 2006-12-20 21:23:58 +00:00
ejcoumans
818b672f60 updated autotools support for make, while keeping jam support. other options are cmake and msvc builds. 2006-12-17 05:35:41 +00:00
ejcoumans
df9230327c Contribution to add optional double precision floating point support. Define BT_USE_DOUBLE_PRECISION for all involved libraries/apps. 2006-12-16 05:51:30 +00:00
ejcoumans
13b637f1ce updated build configuration to include make, next to jam. So ./configure will create Makefile AND Jamefile. 2006-12-15 18:24:31 +00:00
ejcoumans
6dff5a218e process contact and non-contact constraints inside the same iteration loop
added first draft for hingeConstraint motor
2006-12-12 03:15:11 +00:00
ejcoumans
9022f8cc70 fixes for buildsystem 2006-12-09 01:19:15 +00:00
ejcoumans
f9832f6b88 updated build systems/GPU_physics for Mac OS X 2006-12-08 22:04:02 +00:00
ejcoumans
bf591b44ec Replaced most STL std::vector with btAlignedObjectArray.
Same interface but less features (push_back, pop_back, clear, size, [] etc).
To prepare for SIMD/SSE code: Added 		#define ATTRIBUTE_ALIGNED16(a) __declspec(align(16)) a
2006-12-06 04:22:36 +00:00
ejcoumans
b6d1b4c94e Added btNearCallback. This is similar to Open Dynamics Engine (ODE) dNearCallback, but important differences:
- contact points are persistent (lifetime more then one frame, for warmstarting/incremental contact point management)
- continuous collision detection, time of impact
Added btRigidBody::isInWorld(), returns true if btRigidBody is inside a btCollisionWorld/btDynamicsWorld derived class
Added angularFactor to btRigidbody, this helps some character control (no angular impulse applied)
2006-12-04 15:42:03 +00:00
ejcoumans
71145de242 renamed ConcaveShape to btConcaveShape
added btHeightfieldTerrainShape (not done yet)
2006-11-29 02:11:25 +00:00
ejcoumans
6738ed329d ASSERT -> btAssert
Added btStackAlloc to Bullet (right now only used by btGjkEpa)
removed default constructors of btCollisionWorld/btDiscreteDynamicsWorld, to reduce link-time dependencies
2006-11-29 01:52:09 +00:00
ejcoumans
94abde9287 Added Genscher's triangle-triangle case (it was not a but) 2006-11-22 19:42:15 +00:00
ejcoumans
460a09c5a5 fixed some issue, to make GCC happy 2006-11-20 19:21:59 +00:00
sjbaker
6bb806d26b More cleanup. 2006-11-20 06:48:45 +00:00
sjbaker
04d41b7a0a Cleanup compilation warnings. 2008-02-12 04:22:31 +00:00
ejcoumans
62104ba082 updated constraint demo, jamfile 2006-11-18 03:33:09 +00:00
ejcoumans
3adf09f7e3 updated EPA,
updated user manual (work in progress)
2006-11-18 03:27:01 +00:00
ejcoumans
b07bb88a2d Added new EPA penetration depth solver
improved gjk/minkowski sampling pd method
added original solver variant, use btSequentialImpulseConstraintSolver2
Added Pierre Terdimans PD testbed
2006-11-16 06:14:12 +00:00
ejcoumans
dcdfbe1680 more tweaking to get GJK more reliable 2006-11-15 02:23:45 +00:00
ejcoumans
b5afb11282 Work on some improvements for GJK/PenetrationTestBullet.cpp. if this introduces issue, will need to revert. 2006-11-14 21:53:59 +00:00
ejcoumans
be175e888e 2006-11-14 05:09:11 +00:00
ejcoumans
711b737293 Added GIMPACT integration for moving concave meshes (interaction with all other Bullet collision shapes)
Thanks a lot to Francisco León Nájera for the contribution!
2006-11-12 07:54:27 +00:00
ejcoumans
125a9c673d Added GIMPACT integration for moving concave meshes (interaction with all other Bullet collision shapes)
Thanks a lot to Francisco León Nájera for the contribution!
2006-11-12 07:46:30 +00:00
ejcoumans
5f91cc237d updated demo, can't stepFront 2006-11-12 07:30:09 +00:00
ejcoumans
06a1de2574 updated build files for GIMPACT 2006-11-12 07:05:37 +00:00
ejcoumans
a9172d8684 Added GIMPACT integration for moving concave meshes (interaction with all other Bullet collision shapes)
Thanks a lot to Francisco León Nájera for the contribution!
2006-11-12 06:15:19 +00:00
ejcoumans
86c27a7c9d Work on fixing some GJK issues reported by Pierre Terdiman (thanks Pierre for the testbed!)
Improved this penetration test with more verbose output
retrieve worldtransform from motionstate when rigidbody gets motionstate assigned
2006-11-11 23:59:51 +00:00
ejcoumans
18b0603c69 2006-11-11 19:33:19 +00:00
ejcoumans
aaa6b687a9 disable EPA demo 2006-11-11 06:49:17 +00:00
ejcoumans
98fa2a38e8 updated some jamfiles, for Extra folder 2006-11-11 06:40:55 +00:00
ejcoumans
8cbd721a1f added some brute-force way to shrink convex polyhedra (to compensate collision margin)
made Extra/EPA compile again, updated Pierre's testbed to compile out-of-the-box
2006-11-11 03:22:15 +00:00
ejcoumans
56e135874b added angular limits to the Generic D6 constraint. Works for small angles. Will add a check for different combinations, and use different extraction of ordering of rotation from the diff quaternion.
Improved vehicle interpolation of wheels, and added Z-up axis option for the Demo
made 'getWorldTransform' const method in btMotionState
added future 'deactivationCallback'(not used yet)
2006-11-10 04:00:16 +00:00
ejcoumans
442ce2ec09 updated VehicleDemo to show Z as up-axis, rather then Y.
proper gravity for BspDemo
2006-11-09 19:55:14 +00:00
ejcoumans
4ab4fc8bb1 Integrated fixes for Solaris from Noerghel, http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=673 2006-11-09 15:27:02 +00:00
ejcoumans
5102b7ac60 added very basic debug drawing for vehicle wheels, and updated raycast in world to do ray-aabb instead of aabb-aabb 2006-11-09 04:43:18 +00:00
ejcoumans
6d47d9492e added non-uniform scaling to btMultiSphereShape
added ray-aabb check
modified Raycast demo to be more useful for debugging collision shapes
2006-11-09 01:58:33 +00:00
ejcoumans
c3ed55057c - added linear limits to btGeneric6DofConstraint and made sure the linear axis are in local space of objectA
- use microseconds instead of milliseconds for deltatime
2006-11-07 02:32:52 +00:00
ejcoumans
074e2b2d3b improved robustness of penetrations involving triangles and boxes, by adding their 'preferred' penetration directions.
added wireframe/solid mode for meshes
updated solid penetration depth solver (comparison in Extras)
2006-11-05 05:12:10 +00:00
sjbaker
6c61060339 Cleaned up some compile-time warnings. 2006-11-04 15:34:56 +00:00
ejcoumans
23c64fb0db more solver experiments, randomize the order of contact points, not just manifolds
use #defines for constants, rather then const btScalar
2006-11-04 05:22:36 +00:00
ejcoumans
07873854a4 more small refactoring: some methods were still upper-case. 2006-11-03 04:32:48 +00:00
ejcoumans
4050da0e2f One of the last parts of the refactoring (hopefully), made most members of btCollisionObject protected.
Also did some work on improving the constraint solver.
2006-11-02 03:42:53 +00:00
ejcoumans
82ba30caa6 fixed 2 issues, one related to wrong 'safety' catch for large objects
and COLLADA constaints didn't recognize rigid body names
2006-10-31 02:11:29 +00:00
ejcoumans
b14ccdaa57 rename treshold into thresold (spelling mistake)
added cr/linefeed at end of btDefaultMotionState.h
2006-10-30 05:06:46 +00:00
ejcoumans
6232763f9e fixed debugDraw colors (thanks pcOde http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=642 ) 2006-10-29 18:54:09 +00:00
ejcoumans
733e135753 made the BulletDino a c-demo, to demonstrate future Bullet C-API 2006-10-29 16:26:19 +00:00
ejcoumans
507a06bc06 fixed Dino demo for Mac OS X 2006-10-29 14:48:55 +00:00
ejcoumans
82b310c9cd prepared to add BulletDino, and made ForkLiftDemo compile (no functionality yet) 2006-10-29 06:34:58 +00:00
ejcoumans
d6c6cbaee6 enabled the vehicle demo again (still needs lots of tuning before it drives well)
fixed some warnings
2006-10-29 03:36:16 +00:00
ejcoumans
caca3a1ca2 commented out some unused headerfile in the demo 2006-10-28 02:17:54 +00:00
ejcoumans
3fe3b11924 use Dispatcher in ConcaveConvexCollisionAlgorithm (so it uses the registered collision algorithm, not hardcoded convexconcave)
improved performance of constraint solver by precalculating the cross product/impulse arm
added collision comparison code: ODE box-box, also sphere-triangle
added safety check into GJK, and an assert for AABB's that are very large
write partid/triangle index outside of GJK
2006-10-28 02:06:19 +00:00
ejcoumans
7987be45c5 added Pierre's PenetrationTestBullet.cpp
See http://continuousphysics.com/Bullet/phpBB2/viewtopic.php?t=638
2006-10-27 21:22:29 +00:00
ejcoumans
289c5ca7fe improvements/bugfixes related to kinematic(animated) objects, synchronizeMotionStates 2006-10-19 15:20:38 +00:00
ejcoumans
d11572a4d7 case-issue, QuickProf->Quickprof 2006-10-19 05:33:36 +00:00
ejcoumans
940e753086 made demos working for realtime 2006-10-18 04:32:00 +00:00
ejcoumans
33b3ec94f1 more fixes, related to introduction of btMotionState, and using realtime timestep 2006-10-18 04:01:07 +00:00
ejcoumans
3a6942fb91 processed a lot of feedback: added 'realtime' simulation with fixed substeps (and clamping maximum number of substeps), this means that when stepSimulation is called with smaller timesteps then 'fixed substep' the motionstate is interpolated.
renamed m_ccdSweptSphereRadius,
enabled wireframe debugDrawObject (using debugDrawer)
2006-10-18 03:28:42 +00:00
sjbaker
ef993557fe Fixed elevation wrap-around problem in Demo's. 2006-10-15 19:10:30 +00:00
ejcoumans
b476223c45 added/documented some options 2006-10-14 00:16:55 +00:00
ejcoumans
3db4afa4ec disable comparison by default 2006-10-14 00:06:46 +00:00
ejcoumans
d878885db4 updated quickstep solver (for comparison), enabled GPU physics again (but WIN32 doesn't have the VertexTextureSupport enabled) 2006-10-13 23:58:52 +00:00
ejcoumans
2c66be25fc added cleanup memory for BasicDemo, and another pragma warning ignore 2006-10-13 23:24:09 +00:00
ejcoumans
f3b9dcd714 modified triangle mesh generation, to use btTriangleMesh, which is easier to build then the striding index/vertex arrays alternative. 2006-10-11 20:45:11 +00:00
ejcoumans
a337372905 added first draft of C-API, btConvexHullShape takes float* instead of btPoint*, added getGravity to btRigidBody 2006-10-11 06:07:14 +00:00
ejcoumans
f3eb3cfa37 Added a very basic dynamics demo, only using spheres (and optionally boxes) 2006-10-09 20:41:18 +00:00
ejcoumans
bf847b839a another large series of changes, related to the refactoring.
CompoundShapes are tricky to manage with respect to persistent contact points and swapped order of btCollisionObjects,
During dispatch, finding an algorith etc. order can be swapped.
fixed several other issues, related to SimpleBroadphase (removing a proxy was not working)
2006-10-06 05:22:13 +00:00
ejcoumans
97b287a6bc updated Jam buildsystem to link properly under systems that rely on strict ordering of the link libraries 2006-10-05 14:05:09 +00:00
ejcoumans
71393bac40 updated buildstuff, collada-dom is now colladadom (should make VisualStudio 6 users happy) 2006-10-04 23:54:22 +00:00
ejcoumans
323a1046fd Cleaned up/simplified construction of a btRigidBody
Fixed memoryleak in btOptimizedBvh (delete []m_contiguousNodes;)
Changed DemoApplication::localCreateRigidBody, so it adds the rigidbody to the btDynamicsWorld.
Added check for duplicate objects in world when adding.
Added assert to prevent setLinearVelocity on static rigidbodies
Added btCollisionFilterGroups to btBroadphaseProxy
removed duplicate 'btBroadphaseProxy*	m_broadphaseProxy;' in btRigidBody
2006-10-04 23:46:27 +00:00
ejcoumans
d85ecfe5c2 removed more duplicate iterators 2006-10-03 18:01:24 +00:00
sjbaker
2aaab1ab1a Assorted cleanup of compilation warnings. Also fixed some actual errors:
#include "renderTexture.h"...when the file is actually called 'RenderTexture.h'.
2006-10-01 00:08:09 +00:00
ejcoumans
62bdd2bde2 don't crash when no debugdrawer is available, added some damping for the constraint demo 2006-09-30 03:16:02 +00:00
ejcoumans
dcf007ca38 more refactoring for CMake buildsystem 2006-09-30 02:51:35 +00:00
ejcoumans
c9e468b127 update buildsystem for recent refactoring 2006-09-30 02:40:55 +00:00
ejcoumans
01a6290cf7 more refactoring, restored some profiling and some debugging 2006-09-30 02:26:51 +00:00
ejcoumans
d38549aa54 more refactoring, removed PhysicsInterface, cleaned up demos to make use of btDynamicsWorld derived classes.
removed two cached optimizations, type in btTransform and cached inverse transform (todo: test performance impact)
committed fixes that make the code adhere to 'who creates it, also destroys it'
2006-09-30 01:36:39 +00:00
ejcoumans
fc9319ee43 refactoring: added basic text in DemoApplication (not all keys are hooked up yet) 2006-09-28 01:56:34 +00:00
ejcoumans
c473bd69ce refactoring 2006-09-28 01:28:16 +00:00
ejcoumans
5b2d6af1ef refactoring: re-ordered libs 2006-09-28 01:27:48 +00:00
ejcoumans
2b1657b1dd Refactoring: another huge number of changes, renamed methods to start with lower-case. 2006-09-28 01:11:16 +00:00
ejcoumans
d0f09040e9 fixed some merging conflicts 2006-09-27 20:58:49 +00:00
ejcoumans
eb23bb5c0c merged most of the changes from the branch into trunk, except for COLLADA, libxml and glut glitches.
Still need to verify to make sure no unwanted renaming is introduced.
2006-09-27 20:43:51 +00:00
ejcoumans
37a53ee7d9 small cleanup in the DemoApplication, removed references to obsolete PHY_ShapeProps/PHY_MaterialProps
removed deletion of motionstate in CcdPhysics/CcdPhysicsController destructor
disabled m_type optimization in SimdTransform (making the memory size 64 byte, potentially more cache friendly)
fixed a bug in island generation, causing the activation not propagating in one frame, but one 'layer' of rigidbodies at a time
2006-09-26 18:59:29 +00:00
ejcoumans
0e04cfc806 First stage in refactoring Bullet: moved Bullet Collision and Dynamics and LinearMath into src folder, and all files in Collision Detection and Dynamics have bt prefix.
Made all buildsystems to work again (jam, msvc, cmake)
2006-09-25 08:58:57 +00:00
sjbaker
86f5b09623 Added newline at the ends of these files in order to prevent g++ warnings. 2006-09-24 17:25:13 +00:00
sjbaker
f1627677df Fixed over 500 compile warnings. Mostly:
* Unused variables.
* Missing newlines at ends of #included files.
* signed int loop variables where the termination condition is an unsigned 'get number of' function.
* 'NULL' used inappropriately for an integer or character constant (NULL is a pointer)
* abstract base classes with no virtual destructor.
* Floating point constants used to initialise integer variables.
2006-09-23 14:51:54 +00:00
ejcoumans
7dea1a911c filename fixes 2006-09-20 03:48:58 +00:00
ejcoumans
aaed6cc26b fixed some redundant arguments, and updated change list 2006-09-20 01:17:42 +00:00
ejcoumans
5ed0cf5b7f improved performance, and allowed custom friction and contact solver models. See CcdPhysicsDemo #define USER_DEFINED_FRICTION_MODEL 2006-09-20 00:49:33 +00:00
ejcoumans
d375a474b3 fixed broadphases after performance optimizations 2006-09-19 06:08:54 +00:00
ejcoumans
84afe40064 changed version number, moved SphereSphere algorithm and decreased default number of rigidbodies from 3250 back to 250. 2006-09-19 04:58:11 +00:00
ejcoumans
96046852b2 moved SphereSphereCollisionAlgorithm to main library 2006-09-19 04:55:02 +00:00
ejcoumans
8c023e764c started working on some serious performance improvements. now the union find is optimized, the broadphase add/remove overlapping pair was too slow. added a stl::set to keep track of overlapping pairs. this speeds up the set find/remove. work in progress.the SimpleBroadphase is broken. will be fixed tomorrow.
Did some tests with 3000 rigidbodies, works much smoother now :)
2006-09-19 02:59:30 +00:00
ejcoumans
f83677deed added buildsystem files 2006-09-17 06:34:40 +00:00
ejcoumans
28404fe477 2006-09-17 06:32:57 +00:00
ejcoumans
a98b7f1a95 example that shows how to register your own collision algorithms. 2006-09-17 01:39:54 +00:00
ejcoumans
c114703156 updated demos includes 2006-09-11 06:10:40 +00:00
ejcoumans
43370aaa4f first step in refactoring/cleaning up demos 2006-09-11 05:31:22 +00:00
ejcoumans
a27c35ecaa 2006-09-11 05:30:55 +00:00
ejcoumans
1bbd779aa3 added ColladaConverter.cpp to cmakelist 2006-09-07 00:44:34 +00:00
ejcoumans
fa4fd1369c Added support for SHORT/WORD indices
Removed references to m_userPointer (in CollisionObject), called it m_userObjectPointer
increased view distance in glut demo file
2006-09-06 22:21:12 +00:00
ejcoumans
fa96109cd9 Exposed another glut method (the demos really require cleanup soon!)
First steps for a raycast-vehicle demo (far from finished)
2006-09-05 07:36:55 +00:00
ejcoumans
a0c157ed85 fixed memoryleak,
added RayTestSingle to CollisionWorld
prepared to add VehicleDemo
2006-09-04 21:28:32 +00:00
ejcoumans
815ec6178e Collada Converter minor fix in load 2006-09-02 00:34:03 +00:00
ejcoumans
59b6f509ff improved COLLADA physics support, with respect to instancing.
Can read Ageia 'CreateDynamics' exported files again.
See http://codesuppository.blogspot.com/
2006-09-01 23:42:14 +00:00
ejcoumans
334ce42650 added basic RaycastVehicle support, and CcdPhysicsEnvironment::getAppliedImpulse(int constraintId), this value is useful as treshold to break constraints. 2006-08-29 23:55:32 +00:00
ejcoumans
4cdcee8871 updated CMakeLists.txt to include LibXML and LibColladaDom, and use better naming for libs. This should allow autogeneration of visual studio projectfiles, and Apple XCode projectfiles for COLLADA_DOM demo. 2006-08-28 01:26:31 +00:00
ejcoumans
ee3ca06b20 added additional quickprof timer for rendering 2006-08-17 09:41:56 +00:00
ejcoumans
8cd999a189 changed filename for msvc 2006-08-16 14:03:39 +00:00
ejcoumans
e11b86cf4c endian-check bug? 2006-08-11 23:38:38 +00:00
ejcoumans
d5c7b742ad updated buildfiles for new BspDemo 2006-08-11 23:28:37 +00:00
ejcoumans
f43911f9d0 added CMake file 2006-08-11 23:27:19 +00:00
ejcoumans
e2b6d4ee65 some changes related to BspDemo 2006-08-11 23:01:25 +00:00
ejcoumans
955858a48b Added Quake BSP loading to the ColladaDemo example. This can become utility to transform bsp2dae 2006-08-11 21:24:35 +00:00
ejcoumans
ac9c70cbbf Added Quake BSP loading to the ColladaDemo example. This can become utility to transform bsp2dae 2006-08-11 21:24:14 +00:00
ejcoumans
cccd18c08e added CMakeLists.txt for opengl support 2006-08-11 07:13:23 +00:00
ejcoumans
d931aae32f added basic CCD calculations for Compounds and non-convex (convex-versus-concave). 2006-08-11 04:10:37 +00:00
ejcoumans
16781831dc added initial support for per-triangle material properties in a non-convex mesh. needs testing. 2006-08-10 08:18:05 +00:00
ejcoumans
3a27e8b1bf Added preliminary CMake buildsystem support, it can autogenerate projectfiles/makefiles etc. Including Mac OS X Xcode.
This provides a better maintainable alternative to jam/msvcgen
2006-08-09 19:38:21 +00:00
ejcoumans
04e57189c8 added compound support in COLLADA physics import 2006-08-01 05:37:54 +00:00
ejcoumans
235b49d748 COLLADA import, avoided some crashes, improved <convex_mesh> support 2006-07-29 00:54:31 +00:00
ejcoumans
b8cbfe5f72 Basic support for COLLADA physics constraints (each DOF can be completely locked or free, no limits yet) 2006-07-28 21:49:26 +00:00
ejcoumans
63594284c3 - quick workaround in the COLLADA-DOM to handle INF/-INF
- started few lines into COLLADA constraint importing
2006-07-28 02:47:26 +00:00
ejcoumans
bb4b099583 2006-07-27 01:45:06 +00:00
ejcoumans
2e64928d96 Improved conformance, added Auto-Camera UP support (from asset <up_axis>Y_UP</up_axis>)
Added the Bullet signature for export (comment/author/authoring_tool)
2006-07-26 21:54:08 +00:00
ejcoumans
750af5c197 updated COLLADA 'physics snapshot' export 2006-07-26 07:25:07 +00:00
ejcoumans
44ff483ad6 allow to export simulation to COLLADA 2006-07-26 03:03:22 +00:00
ejcoumans
50a2694c5b more compounds work, the basics work. now some stackless tree-tree traversal is needed to speedup compound versus compound. 2006-07-24 23:06:59 +00:00
ejcoumans
fdaa3a7abc some work on compound collision shapes (not finished yet) 2006-07-24 05:22:56 +00:00
ejcoumans
60ce7413fe added COLLADA <plane> support (uses StaticPlaneShape ) 2006-07-18 19:38:56 +00:00
ejcoumans
08464b1964 Added COLLADA-DOM import for concave triangle <mesh> 2006-07-18 04:42:27 +00:00
ejcoumans
f2743251f7 recent changes didn't import convex_mesh 2006-07-17 05:14:16 +00:00
ejcoumans
9f9f35f847 working towards better COLLADA 1.4i physics conformance for the DOM 2006-07-16 22:26:11 +00:00
ejcoumans
3f1319586c fixed libxml for MacOS X 2006-07-10 07:15:40 +00:00
ejcoumans
ccad7b2f22 'Think Different': enabled some demos to compile for OS X -i386 2006-07-10 05:25:06 +00:00
ejcoumans
faa1dc90be debug drawing for ParallelPhysicsEnvironment 2006-07-05 05:22:09 +00:00
ejcoumans
d2570694a9 added debug drawing for concave objects (draws overlapping triangles) 2006-07-05 05:03:09 +00:00
ejcoumans
62593f8b99 refactoring of TriangleMeshShape, introduced ConcaveShape, which allows for StaticPlaneShape and future landscape/heightfield shape 2006-07-03 22:41:19 +00:00
ejcoumans
e190b3cb79 Added basic gather/scatter to simulation island (for ParallelIslandDispatcher/ParallelPhysicsEnvironment. 2006-07-02 05:33:35 +00:00
ejcoumans
a359212fb3 more work on parallel dispatching of simulation islands 2006-07-01 03:33:05 +00:00
ejcoumans
2d80bae6e3 fairly large refactoring of dispatcher/simulation island management, to allow for parallel simulation. 2006-07-01 00:22:15 +00:00
ejcoumans
8e91b0cd68 ParallelPhysicsEnvironment development started 2006-06-30 05:39:15 +00:00
ejcoumans
3a85557c29 Refactoring for parallel processing of islands, collision detection and constraint solving. 2006-06-30 00:41:09 +00:00
ejcoumans
9824a49f08 adjusted the default numbodies for CcdPhysicsDemo 2006-06-29 21:19:22 +00:00
ejcoumans
5d1c4ddd68 adjusted the default number of bodies in CcdPhysicsDemo 2006-06-29 21:16:05 +00:00
ejcoumans
54641d98f7 lowered the default number of objects 2006-06-29 21:13:29 +00:00
ejcoumans
16116177a7 updated projectfiles for moved files, disable EPA demo (temporarily) 2006-06-29 21:10:32 +00:00
ejcoumans
9105c3af5a Refactoring:
Moved optional code to Extras: AlgebraicCCD,EPA,quickstep
Moved SimpleBroadphase data to OverlappingPairCache, and derive both SimpleBroadphase and AxisSweep3 from OverlappingPairCache.
Added ParallelPhysicsEnvironment (prepair more parallel mainloop)
Upgraded hardcoded limit from 1024/8192 to 32766/65535 (max objects / max overlapping pairs)
2006-06-29 20:57:47 +00:00
ejcoumans
7a0a0941f9 moved filters in CcdConstructionInfo 2006-06-25 21:03:10 +00:00
ejcoumans
c8a0c95195 added basic collision filtering, in broadphase. more advanced collision filtering should happen in CollisionDispatch::NeedsCollision
fixed CcdPhysicsDemo: don't pick static objects, it create a point 2 point constraint, which assert in jacobian generation
2006-06-25 19:36:50 +00:00
ejcoumans
324b18b719 minor type in simdvector3, no picking on fixed objects, no run-time type info 2006-06-21 05:22:43 +00:00
ejcoumans
e82e31e692 removed some obsolete files (appBasicSample), FCollada lib, external-libs folder
start physics by default (not pressing 'i')
2006-06-19 23:21:10 +00:00
ejcoumans
c4cd297f22 step the simulation 1 frame, so the initial starting position is ok.
added comment how to use FCollada instead of COLLADA_DOM
2006-06-19 22:03:07 +00:00
ejcoumans
8dcbaeb2b8 more work to get libxml / libcollada-dom to build multiplatform 2006-06-19 19:33:14 +00:00
ejcoumans
51fb1b25fc added missing libxml2 files, and config.h (for linux). todo: both configwin32.h for win32, and configure for non-windows 2006-06-19 02:01:26 +00:00
ejcoumans
650e0ac744 created Jamfile for COLLADA_COM & LibXML, added LibXML in it's own location under Extras
libxml doesn't compile with jam yet, C sourcecode versus C++?
2006-06-18 10:25:12 +00:00
ejcoumans
ddf9973fba preliminary convex hull support using COLLADA_DOM,
draw convex hull in wireframe (point cloud doesn't have triangles)
2006-06-18 07:04:21 +00:00
res2002
c875616bbb Typo 2006-06-17 18:44:49 +00:00
res2002
0f54c5c8f5 Add Extras/FCollada as an include path for appColladaDemo. 2006-06-17 18:43:06 +00:00
ejcoumans
3c6993e45e - CcdPhysicsDemo also uses Generic6DofConstraint (testing with mouse picking).
- HingeConstraint back to old method by default (comparison)
- FCollada by default in ColladaDemo
2006-06-14 02:51:47 +00:00
dondickied
63e05649ee 2006-06-13 21:48:15 +00:00
dondickied
7535b02e58 dgregorius: Changed hinge constraint to use JacobianEntry class. Also removed change from last submission to JacobianEntry constructor for angular constraints. 2006-06-12 19:53:41 +00:00
ejcoumans
d61f1034ba step closer to COLLADA-DOM, convex hull / mesh. can't find where the vertices/triangles are 'hidden' in the structures. 2006-06-10 01:44:20 +00:00
ejcoumans
87b6f7ae37 COLLADA-DOM support for box, sphere, cylinder, mass, isdynamic and start transform 2006-06-09 22:34:17 +00:00
ejcoumans
b4df21acb5 added cylinder support in ColladaDemo, rendering of Cylinder, updated .dae files. 2006-06-09 00:17:20 +00:00
ejcoumans
f743269af9 Added Generic 6 DOF Constraint skeleton 2006-06-03 21:09:14 +00:00
ejcoumans
9c21151c5f new Collada physics demos 2006-06-03 02:19:43 +00:00
ejcoumans
ac11a0c06b Did a bit more Collada physics importing work.
Also did a quick workaround to allow different camera UP. This demo stuff really needs to be cleaned up now!
2006-06-03 02:13:59 +00:00
ejcoumans
5cb549a9bb more Collada physics work 2006-06-01 06:58:51 +00:00
ejcoumans
b5d0520c58 added initial Collada 1.4 Physics support 2006-06-01 03:27:01 +00:00
ejcoumans
7392431860 some work on fcollada import 2006-05-27 01:24:08 +00:00
ejcoumans
8402358d46 compile convexdecomposition under unix, removed another template 2006-05-26 17:47:54 +00:00
ejcoumans
d973370f3b 2006-05-26 05:56:39 +00:00
ejcoumans
9405204ee5 new demos 2006-05-26 00:30:45 +00:00
ejcoumans
23580cbaed added demos 2006-05-25 20:02:12 +00:00
ejcoumans
76ab55d1be added demos 2006-05-25 20:01:29 +00:00
ejcoumans
e061ec1ebf moved files around 2006-05-25 19:18:29 +00:00