Commit Graph

297 Commits

Author SHA1 Message Date
Daniel Chappuis
501bca5e3d Fix issue in TriangleVertexArray 2017-09-04 07:26:01 +02:00
Daniel Chappuis
946e62dd4b Remove unnecessary collision margin for some shapes 2017-09-03 19:06:02 +02:00
Daniel Chappuis
8bab9c1348 Remove unused cachedCollisionData parameter 2017-09-03 18:05:23 +02:00
Daniel Chappuis
e1602f2b27 Fix issues with normals computation in TriangleVertexArray 2017-09-03 17:35:09 +02:00
Daniel Chappuis
6a22b3a81d Fix temporal coherence in SAT algorithm between two convex polyhedra 2017-09-03 10:48:39 +02:00
Daniel Chappuis
673e487f14 Remove temporal coherence from SAT for sphere vs polyhedron and capsule vs polyhedron 2017-09-01 07:37:45 +02:00
Daniel Chappuis
9b89f66667 Fix issues and refactor collision shape type and collision shape name 2017-08-31 23:11:00 +02:00
Daniel Chappuis
a655ffb462 Fix issue in ContactManifoldSet.cpp 2017-08-31 22:42:19 +02:00
Daniel Chappuis
624e01b595 Working on ConcaveMeshShape and HeightFieldShape collision detection 2017-08-21 07:35:08 +02:00
Daniel Chappuis
319cc72cde Fix issues in collision detection 2017-08-18 17:50:27 +02:00
Daniel Chappuis
2f60190942 Do not generate contact in GJK algorithm if not needed 2017-08-01 15:57:46 +02:00
Daniel Chappuis
b6ad69b278 Do not compute contacts if not necessary 2017-07-30 23:56:20 +02:00
Daniel Chappuis
8b82c4ac81 Refactor the way to create the contact manifolds and contact points 2017-07-30 22:14:46 +02:00
Daniel Chappuis
6eec956eb0 Fix issues in SAT algorithm between two convex polyhedra 2017-07-21 08:09:43 +02:00
Daniel Chappuis
ddd7f500a6 Fix issues in SAT algorithm 2017-07-17 18:35:51 +02:00
Daniel Chappuis
6e9a84823a Fix issues in collision detection 2017-07-17 08:05:40 +02:00
Daniel Chappuis
2f43e554b5 Make TriangleShape inherits from ConvexPolyhedronShape 2017-06-06 21:12:26 +02:00
Daniel Chappuis
95db87fd62 Working on contacts reduction 2017-06-05 00:05:49 +02:00
Daniel Chappuis
b1597c508f Working on temporal coherence in SAT algorithm 2017-05-31 07:36:39 +02:00
Daniel Chappuis
6b0ba1cfbb Fix issues in collision detection 2017-05-29 22:30:30 +02:00
Daniel Chappuis
730b687877 Working on temporal coherence in SAT (polyhedron vs polyhedron) 2017-05-29 08:32:10 +02:00
Daniel Chappuis
2af87d4804 Add bias to prefer some axis when penetration depths are the same in SAT algorithm 2017-05-16 07:42:04 +02:00
Daniel Chappuis
0ec21e36b9 Working on SAT algorithm between two polyhedra 2017-05-16 07:10:44 +02:00
Daniel Chappuis
7fb6f49149 Working on capsule vs polyhedron narrow-phase algorithm 2017-04-28 21:40:16 +02:00
Daniel Chappuis
f61fea8b8a Add clippling segment/polygons methods, fix issues and add convex vs capsule algorithm 2017-04-16 22:09:59 +02:00
Daniel Chappuis
57da79492f Add sphere vs convex polyhedron test in SAT algorithm 2017-04-02 00:33:29 +02:00
Daniel Chappuis
951ba3e42c Working on ConvexPolyhedron class 2017-03-30 22:39:06 +02:00
Daniel Chappuis
a9b3afae59 Finish implementing capsule vs capsule narrow-phase algorithm 2017-03-28 23:07:10 +02:00
Daniel Chappuis
050e8b36dc Refactor convex mesh shape (create PolyhedronMesh, ConvexPolyhedron classes) 2017-03-22 19:07:31 +01:00
Daniel Chappuis
b21a6bb59b Refactor contact manifold and contact point creation 2017-02-26 13:48:50 +02:00
Daniel Chappuis
6a01abfae8 Fix issues, work on HalfEdgeStructure and add unit tests 2017-02-20 17:11:13 +02:00
Daniel Chappuis
7a656aedc9 Working on HalfEdgeStructure 2017-02-13 22:38:47 +01:00
Daniel Chappuis
30e0132e15 Add capsule/capsule and capsule/sphere collision algorithm 2017-02-02 23:10:01 +01:00
Daniel Chappuis
e9f2f94f64 Continue working on SAT, remove Cone and Cylinder shapes 2017-02-02 22:58:40 +01:00
Daniel Chappuis
e491e38146 Fix issue in collision detection 2017-01-27 20:26:56 +01:00
Daniel Chappuis
99eb7cf82c Fix issue in collision detection 2017-01-19 21:27:58 +01:00
Daniel Chappuis
a50ae73663 Fix issue in GJK algorithm 2017-01-19 20:29:40 +01:00
Daniel Chappuis
f2a6dde913 Fix return value in EPA Algorithm 2017-01-18 23:05:43 +01:00
Daniel Chappuis
4a97c2ca97 Refactor collision detection 2017-01-08 19:56:59 +01:00
Daniel Chappuis
f82777bd3b Refactor some methods in ContactPoint 2016-11-05 19:20:54 +01:00
Daniel Chappuis
16d27f40b9 Remove bodies pointer from ContactPoint 2016-11-03 18:06:45 +01:00
Daniel Chappuis
14bfb0aca4 Some optimizations in contact solver 2016-10-17 22:41:33 +02:00
Daniel Chappuis
e014f00afc Refactor memory allocator and refactor contact solver 2016-09-21 22:03:45 +02:00
Daniel Chappuis
5b17652adb Merge branch 'develop' into optimization 2016-08-21 20:49:22 +02:00
Daniel Chappuis
0a7eeaeb48 Fix compilation error on gcc 2016-08-21 19:32:14 +02:00
Daniel Chappuis
8a69dc89fa Add missing override keyword 2016-08-21 12:34:27 +02:00
Daniel Chappuis
8d2b898168 Fix merge conflicts 2016-08-21 11:47:22 +02:00
Daniel Chappuis
2932403ff4 Use default keyword for default constructors/destructors 2016-07-19 06:52:18 +02:00
Daniel Chappuis
cfede8f179 Use constexpr for compile time constants 2016-07-11 08:59:39 +02:00
Daniel Chappuis
16478722de Use override keyword to mark virtual overriden methods 2016-07-11 08:33:24 +02:00
Daniel Chappuis
f5ade0f52d Fix virtual constructors, use c++11 scoped enums, use c++11 delete methods instead of private constructors 2016-07-08 07:25:37 +02:00
Daniel Chappuis
be957ba41a Replace typedefs by c++11 alias declaration 2016-07-06 07:05:34 +02:00
Daniel Chappuis
da9f6ae233 Remove Simplex class (replaced by VoronoiSimplex) 2016-07-05 22:02:16 +02:00
Daniel Chappuis
4bad013c91 Make GJK/EPA collision detection more robust 2016-07-05 21:34:44 +02:00
Daniel Chappuis
ccd33c2502 Fix issue in VoronoiSimplex 2016-06-27 18:50:12 +02:00
Daniel Chappuis
fd224ebaba Add VoronoiSimplex class for GJK algorithm 2016-06-20 08:41:22 +02:00
Daniel Chappuis
9fae1b4e35 Add missing virtual destructor 2016-06-20 08:40:26 +02:00
Daniel Chappuis
6a8b63adc2 ProxyShape must have a virtual destructor 2016-05-15 19:29:50 +02:00
Daniel Chappuis
2640fbd48a Start replacing NULL constant by nullptr 2016-05-15 19:25:58 +02:00
Daniel Chappuis
1ae9bb5467 Fix warning 2016-04-12 21:32:35 +02:00
Daniel Chappuis
34b330eb4f Fix warnings 2016-04-12 21:28:09 +02:00
Daniel Chappuis
4ae8d446be Fix compilation errors on Visual Studio and warnings 2016-04-12 18:44:55 +02:00
Daniel Chappuis
d9087d6e84 Small modification 2016-04-11 21:38:47 +02:00
Daniel Chappuis
8a75c867a5 Change version number of the library 2016-04-11 20:15:20 +02:00
Daniel Chappuis
41dfaf0fa5 Fix warnings 2016-04-09 11:26:43 +02:00
Daniel Chappuis
5b7a096e27 Remove .mtl file and add doxygen documentation in TriangleVertexArray 2016-04-07 08:48:25 +02:00
Daniel Chappuis
315c701f34 Move method in cpp file 2016-03-30 07:09:35 +02:00
Daniel Chappuis
fc1f844135 Merge branch nanogui into develop 2016-03-21 20:57:42 +01:00
Daniel Chappuis
3e98ab2282 Add support for rolling resistance in the contact solver 2016-03-20 23:01:38 +01:00
Daniel Chappuis
d0481e0901 Fix compilation errors/warnings on Linux 2016-02-22 23:26:50 +01:00
Daniel Chappuis
32bee688be Working on demo scenes in testbed application 2016-02-14 19:36:56 +01:00
Daniel Chappuis
eeb1052833 Fix issue in HeightField and user Perlin noise to generate terrain 2016-02-11 23:09:01 +01:00
Daniel Chappuis
4931e1450a Fix issues in HeightFieldShape 2016-02-08 22:24:57 +01:00
Daniel Chappuis
be4cbbffd9 Fix issue in HeightFieldShape 2016-02-01 18:49:45 +01:00
Daniel Chappuis
ece6db9636 Working on HeightFieldShape 2016-01-28 23:04:01 +01:00
Daniel Chappuis
03a31e44f3 Working on HeightFieldShape 2016-01-21 22:27:52 +01:00
Daniel Chappuis
b9112be1dc Modification in ConvexShape and continue working on HeightFieldShape 2016-01-19 22:37:03 +01:00
Daniel Chappuis
ec3a9cef87 Modificaitons in ConcaveMeshShape 2016-01-14 21:43:19 +01:00
Daniel Chappuis
b7769e5211 Add HeightFieldShape class 2016-01-14 21:34:30 +01:00
Daniel Chappuis
739e0fec73 Modifications in methods to get support point in many collision shapes 2016-01-14 21:24:21 +01:00
Daniel Chappuis
a5f39de375 Fix issues related to local scaling in ConvexMeshShape 2016-01-12 22:48:14 +01:00
Daniel Chappuis
a12703b86d Make possible to create a ConvexMeshShape using a TriangleVertexArray 2016-01-07 23:04:39 +01:00
Daniel Chappuis
8be408ccec Modifications for smooth concave mesh contacts 2016-01-05 18:39:22 +01:00
Daniel Chappuis
4362033018 Add object margin to TriangleShape 2015-12-16 18:39:13 +01:00
Daniel Chappuis
0b6d9af18e Add testRayIntersect() method to AABB and use in raycasting broadphase 2015-12-07 23:03:04 +01:00
Daniel Chappuis
df88e59017 Transform ray from world-space to local-space earlier during raycasting 2015-12-07 17:32:18 +01:00
Daniel Chappuis
9c7f70b9b7 Add double sided raycast test for TriangleShape, add unit tests 2015-12-05 17:51:07 +01:00
Daniel Chappuis
6ebad66acf Working on triangles mesh raycasting 2015-12-02 22:25:52 +01:00
Daniel Chappuis
3ebb00fd68 Modifications in testbed for setScaling() method on objects 2015-11-24 07:03:02 +01:00
Daniel Chappuis
22b214fb91 Add setScaling() method to objects in testbed/common 2015-11-20 07:20:56 +01:00
Daniel Chappuis
3476f3e9c4 Add setLocalScaling() method to CollisionShape and ProxyShape and fix issue in collision detection test method 2015-11-19 07:20:43 +01:00
Daniel Chappuis
4eceb7e7c6 Small modifications 2015-11-16 19:08:36 +01:00
Daniel Chappuis
5c8320583d Change the testCollision() methods to return void instead of bool 2015-11-16 07:25:46 +01:00
Daniel Chappuis
32d9c0e1b8 Fix issue in convex vs concave mesh collision 2015-11-16 07:05:07 +01:00
Daniel Chappuis
568f03461f Continue working on triangle mesh collision detection 2015-11-13 21:23:34 +01:00
Daniel Chappuis
d9fe3ed97f Make DynamicAABBTree more generic and use less memory per node 2015-11-06 17:29:42 +01:00
Daniel Chappuis
63094dfd92 Fix issue in ConcaveMeshShape (AABB calculation) 2015-10-27 18:34:29 +01:00
Daniel Chappuis
1c735e483c Working on triangular mesh collision detection 2015-10-26 18:15:25 +01:00
Daniel Chappuis
a070dca761 Small changes in ContactManifold 2015-10-19 17:59:41 +02:00
Daniel Chappuis
c3c9a5c38c Remove contact manifolds that do not have contact points anymore after manifold update 2015-10-19 06:55:35 +02:00