Commit Graph

193 Commits

Author SHA1 Message Date
Daniel Chappuis
3acdeb8cd2 Remove dynamic memory allocation of ContactPointInfo instances during narrow-phase 2015-10-12 18:37:18 +02:00
Daniel Chappuis
c7846d4a29 Report narrow-phase contacts to the collision detection in a more generic way 2015-10-12 18:02:18 +02:00
Daniel Chappuis
ec5e41c19e Add ContactManifoldSet to allow several ContactManifolds per overlapping pair 2015-10-08 21:28:37 +02:00
Daniel Chappuis
fc91540a79 Add ContactManifoldSet class 2015-10-02 07:04:05 +02:00
Daniel Chappuis
aab1413f4d Continue working of triangular meshes 2015-09-13 13:02:05 +02:00
Daniel Chappuis
a37f00c41c Use a CollisionShapeInfo instead of a ProxyShape in the collision detection algorithms 2015-09-10 07:30:50 +02:00
Daniel Chappuis
cd808fcf62 Modify the way the collision shapes are created (we don't make an internal copy anymore) 2015-09-04 19:56:27 +02:00
Daniel Chappuis
ae122f07d6 Add ConcaveShape et ConvexShape classes 2015-08-31 17:33:34 +02:00
Daniel Chappuis
0ddec3f842 Start working on triangular meshes collision detection 2015-08-27 22:31:05 +02:00
Daniel Chappuis
c76e5247aa Allow the user to use custom collision detection algorithm 2015-08-19 18:48:08 +02:00
Daniel Chappuis
7ce44f9775 Fix warnings 2015-08-17 06:44:26 +02:00
Daniel Chappuis
3aaac820e0 Fix compilation error on Visual Studio 2013 2015-04-08 22:10:34 +02:00
Daniel Chappuis
6679bb27bc Changes for the next release 2015-02-15 21:56:45 +01:00
Daniel Chappuis
3a8e69654f Add Doxygen documentation 2015-02-12 22:31:26 +01:00
Daniel Chappuis
c56557898f Small modifications 2015-02-09 22:37:36 +01:00
Daniel Chappuis
0b3abacb3c Fix possible memory leaks 2015-02-07 14:15:05 +01:00
Daniel Chappuis
bb0da781a7 Fix compilation warnings 2015-02-01 01:09:58 +01:00
Daniel Chappuis
c057e88983 Small changes in collision detection 2015-01-27 22:40:31 +01:00
Daniel Chappuis
9f4e63361f Small optimization in EPA algorithm 2015-01-19 21:55:18 +01:00
Daniel Chappuis
54d8b8518e Fix two issues in EPA Algorithm 2015-01-18 21:25:15 +01:00
Daniel Chappuis
c8a83768d5 Only compute narrow collisition test if at least one body is awake and not static 2014-12-31 01:47:50 +01:00
Daniel Chappuis
c15b83db4a Add collision and raycast filtering using bits mask 2014-12-31 01:19:14 +01:00
Daniel Chappuis
aae4da54d0 Add methods to test collision and AABB overlap in physics world 2014-12-28 00:54:34 +01:00
Daniel Chappuis
2ab1aace7c Raycast query now returns false if the body is not active 2014-11-29 17:05:53 +01:00
Daniel Chappuis
4ae7e7997a Fix issues in surface normal computation in raycast method of ConeShape and BoxShape 2014-11-27 21:05:32 +01:00
Daniel Chappuis
5d2cf593b5 Remove the PairManager class 2014-11-21 21:38:17 +01:00
Daniel Chappuis
5f7af61593 -Remove unnecessary contact manifold
-Delete the BroadPhasePair class
2014-11-21 21:27:09 +01:00
Daniel Chappuis
2570d794c3 Fix issues in CollisionBody 2014-11-20 21:59:53 +01:00
Daniel Chappuis
ca660b5057 Replace some matrix multiplications by quaternion multiplications 2014-11-05 20:52:21 +01:00
Daniel Chappuis
3da146eb84 Implement world ray casting query 2014-11-04 22:38:40 +01:00
Daniel Chappuis
e9257ec56f Change raycasting so that a ray is given by two points instead of a point and a direction 2014-10-21 22:26:40 +02:00
Daniel Chappuis
08e286d27c Implement raycasting for cone shape 2014-10-08 21:38:40 +02:00
Daniel Chappuis
25c11c6d6a Implement raycasting for capsule shape 2014-09-20 17:00:32 +02:00
Daniel Chappuis
78193d9b03 Small improvements in sphere and cylinder raycasting 2014-09-20 16:59:47 +02:00
Daniel Chappuis
188251afd4 Fix issue with raycasting in cylinder shape 2014-09-20 10:52:42 +02:00
Daniel Chappuis
c07a2dc9a2 Implement raycasting with cylinder shape 2014-09-19 22:53:40 +02:00
Daniel Chappuis
ebf13c3366 Use the standard library swap() function instead 2014-09-19 22:53:05 +02:00
Daniel Chappuis
a89b258418 Implement raycasting for the BoxShape 2014-09-08 23:19:07 +02:00
Daniel Chappuis
0dd55e716b Implement raycasting with sphere shape 2014-09-04 22:32:29 +02:00
Daniel Chappuis
677c694109 Continue the implementation of convex shape raycasting 2014-09-02 22:54:19 +02:00
Daniel Chappuis
3c1b819fda Implement the testPointInside() methods in the collision shapes 2014-08-09 10:28:37 +02:00
Daniel Chappuis
6c505377c5 Clean up the include statements 2014-08-07 21:38:31 +02:00
Daniel Chappuis
47b2eb457a Allow the user to attach user data to a ProxyShape object 2014-08-04 22:57:24 +02:00
Daniel Chappuis
ab8656fc0b Remove all the special proxy shapes to keep only the ProxyShape class 2014-08-04 22:46:58 +02:00
Daniel Chappuis
bd5668ed51 Work on the testPointInside() method 2014-08-01 12:36:32 +02:00
Daniel Chappuis
0faacdbd6b Merge branch 'raycast' of https://github.com/DanielChappuis/reactphysicsd into raycast 2014-07-22 22:46:24 +02:00
Daniel Chappuis
5dd9ee826e Add classes and tests for raycasting 2014-07-21 23:08:18 +02:00
Daniel Chappuis
1415bad00e Small modifications 2014-07-09 23:45:19 +02:00
Daniel Chappuis
050b610d8c Remove check() and checkNode() methods from DynamicAABBTree in release mode 2014-07-07 19:01:26 +02:00
Daniel Chappuis
a983026094 Inflate the AABB in direction of linear motion in Dynamic AABB tree 2014-07-03 00:13:30 +02:00
Daniel Chappuis
3aa05ef61a Fix issues and add conversion from Euler angles to Quaternion 2014-06-24 23:31:13 +02:00
Daniel Chappuis
bc4de62e75 Fix issue in the collision detection for compound shapes 2014-06-10 23:37:11 +02:00
Daniel Chappuis
cbeeec21f3 fix issues in Dynamic AABB Tree and add compound shapes in the examples 2014-06-10 22:46:32 +02:00
Daniel Chappuis
aa76c85e60 continue to replace SAP broad-phase by a dynamic AABB tree 2014-05-15 06:39:39 +02:00
Daniel Chappuis
643ca41922 continue to work on replacing SAP broad-phase by dynamic AABB tree 2014-04-11 23:50:00 +02:00
Daniel Chappuis
76cb11a74f Add the DynamicAABBTree class 2014-03-16 20:59:10 +01:00
Daniel Chappuis
d622e2ff17 Fix issue in the broad-phase pair manager 2013-11-21 23:26:19 +01:00
Daniel Chappuis
1812402617 Add support for the different body types (static, kinematic, dynamic) 2013-11-21 23:24:11 +01:00
Daniel Chappuis
b5ae655b0a Add comments, modify method names, change solver nb of iterations, ... 2013-09-27 18:43:45 +02:00
Daniel Chappuis
97b0903a9d Modify comments 2013-09-25 00:11:23 +02:00
Daniel Chappuis
7ca5b88ce3 Fix compilation errors on Mac OS X and remove the compilation of freeglut from the CMake files 2013-09-12 22:45:43 +02:00
Daniel Chappuis
d4c7eee175 Rename the Constraint class into Joint and do not perform collision detection between two sleeping bodies 2013-09-07 10:57:58 +02:00
Daniel Chappuis
d2f7f6e28c Release memory in the Sweep-And-Prune algorithm when several objects are removed from the world 2013-07-17 00:09:15 +02:00
Daniel Chappuis
828af79bcf Fix issues in the Sweep-And-Prune algorithm (thanks Aleksi for reporting them) and handle the broad-phase world limits in a better way 2013-07-16 22:28:03 +02:00
Daniel Chappuis
ffd79a89e3 Add the convex mesh collision shape 2013-07-15 19:10:30 +02:00
Daniel Chappuis
c3f4355c25 Modify the method that return the bounds of a collision shape and make the getSupportPoint() methods non-const 2013-07-15 19:09:07 +02:00
Daniel Chappuis
88504bbb44 Add some description comments in the collision shapes 2013-07-10 00:22:40 +02:00
Daniel Chappuis
9d9142af30 Add the CapsuleShape class for the capsule collision shape 2013-07-10 00:18:55 +02:00
Daniel Chappuis
a3ca3598d5 Remove the margin gap for the BoxShape and make possible to choose the collision margin when creating a collision shape 2013-07-03 22:50:00 +02:00
Daniel Chappuis
84d946ac48 Modifications of the examples 2013-07-03 22:42:58 +02:00
Daniel Chappuis
ce0078c2a9 Implement the non-linear-gauss-seidel position error correction 2013-06-26 22:28:31 +02:00
Daniel Chappuis
c4d6206ee2 Finish the implementation of the Hinge joint and some others modifications 2013-06-09 16:31:01 +02:00
Daniel Chappuis
c4eee4fb1f Implement the Ball-And-Socket joint 2013-05-02 22:41:57 +02:00
Daniel Chappuis
ded465c105 Remove a file 2013-04-24 22:29:31 +02:00
Daniel Chappuis
2b2143d41e Continue the implementation of the constraint solver 2013-04-24 19:24:28 +02:00
Daniel Chappuis
f692f7ef12 Allocate memory for the collision shapes inside the physics engine 2013-04-22 21:25:40 +02:00
Daniel Chappuis
16c6487796 Change #ifndef names in headers to avoid name collision with others libraries 2013-04-18 22:54:36 +02:00
Daniel Chappuis
e03888ea25 Finish the implementation of the memory allocator 2013-04-01 23:43:50 +02:00
Daniel Chappuis
f479c5edf3 Finish the implementation of the profiler 2013-03-26 21:37:55 +01:00
Daniel Chappuis
17e976ab6c Fix some compilations errors on Linux 2013-03-20 22:41:53 +01:00
Daniel Chappuis
f38803d75a Fix some warnings 2013-03-17 17:07:09 +01:00
Daniel Chappuis
dac5a2729a Do not compute the AABB of a sphere by rotating its extents 2013-03-14 22:47:59 +01:00
Daniel Chappuis
04a31c696c Add Doxygen documentation into the code 2013-03-05 23:09:50 +01:00
Daniel Chappuis
03cddcf568 Access std::map using find() method 2013-03-03 16:36:07 +01:00
Daniel Chappuis
b43f875cef Improve GJK robustness for spheres by integrating the radius into the object margin 2013-03-03 16:24:46 +01:00
Daniel Chappuis
5a373cf27b Clean the code and modify the date in the license text 2013-03-02 16:26:18 +01:00
Daniel Chappuis
4346a16f62 Replace the 0 constant by the NULL pointer in CollisionDetection.cpp 2013-02-28 23:18:48 +01:00
Daniel Chappuis
db23fd0000 Merge branch 'develop' of https://code.google.com/p/reactphysics3d into develop 2013-02-28 22:40:06 +01:00
Daniel Chappuis
ef93134c79 Make some modifications in the mathematics library 2013-02-28 20:03:37 +01:00
Daniel Chappuis
31e6ed2d8a Replace the 0 constant by NULL when using pointers 2013-02-28 19:50:52 +01:00
Daniel Chappuis
cdc384db68 Make possible to access Vector3 members by using x,y and z instead of getX(), getY() and getZ() 2013-02-27 22:10:10 +01:00
Daniel Chappuis
a362171532 Clean the code of the sequential impulse contact solver 2013-02-26 22:43:45 +01:00
Daniel Chappuis
e84f6468c8 Clean the code 2013-02-19 23:16:20 +01:00
Daniel Chappuis
2fc8beaa77 Fix two compilation errors 2012-12-11 23:09:54 +01:00
Daniel Chappuis
4ca42f9392 Clean the code :
- Use the mVariable syntax for member variables
- Every lines contain at most 100 characters
- Add private copy-constructor and assignment operators when needed
2012-10-09 22:21:02 +02:00
Daniel Chappuis
fc37d40bbb Remove the PhysicsEngine and PhysicsWorld classes and add the CollisionWorld and DynamicsWorld classes 2012-10-03 21:00:17 +02:00
Daniel Chappuis
4c0c285174 Add the BroadPhasePair class 2012-09-26 23:07:40 +02:00
Daniel Chappuis
2ed2b2a54f Add the CollisionBody class 2012-09-18 22:09:49 +02:00
Daniel Chappuis
19f7925d47 Allow the MemoryPool class to start with zero allocated memory and grow when more memory is needed 2012-08-13 02:14:47 +02:00
Daniel Chappuis
fcac6457a7 Add documentation 2012-08-06 22:34:42 +02:00