Commit Graph

540 Commits

Author SHA1 Message Date
Daniel Chappuis
23e16cf156 Merge develop into dod and fix conflicts 2018-09-09 22:08:55 +02:00
Daniel Chappuis
bcf305b118 Refactor contact points creation 2018-09-09 21:59:02 +02:00
Daniel Chappuis
e780399e5b Merge master into develop and fix conflicts 2018-08-27 08:11:57 +02:00
Daniel Chappuis
7b14e13fe6 Fix bug with assert with joints 2018-08-22 18:35:53 +02:00
Daniel Chappuis
527cc7fbb7 Replace broad phase pair management custom array by List 2018-08-21 07:37:52 +02:00
Mkr
fa1917a782 Explicitly use std::sqrt to avoid triggering ambiguous call errors when sqrt is defined in other namespaces 2018-08-14 22:24:15 -07:00
Daniel Chappuis
160759bb63 Replace array by Set for the moved shapes in broad-phase and fix a bug with added and removed collision body (crash in BroadPhaseAlgorithm::computeOverlappingPairs()) 2018-07-21 23:25:34 +02:00
Daniel Chappuis
e2fdf8ae8e Fix compilation warnings 2018-07-21 23:07:16 +02:00
Daniel Chappuis
c186a35b2d Fix compilation error on GCC 7 2018-07-21 22:50:54 +02:00
Daniel Chappuis
14491c7eb3 Make comment more clear 2018-07-01 17:24:24 +02:00
Daniel Chappuis
45f86ea543 Fix issue with ConvexMeshShape and BoxShape falling through ConcaveMeshShape and HeightFieldShape 2018-07-01 15:47:50 +02:00
Daniel Chappuis
15d9c29dd8 Fix linker error because of inline keyword 2018-05-31 20:06:33 +02:00
Daniel Chappuis
d15a41f0cc Fix issue with the list of contact manifolds of a CollisionBody that was not cleared 2018-05-30 11:08:34 +02:00
Daniel Chappuis
1c12ffe287 Fix compilation issue on Windows 10 with MINGW64 2018-05-29 21:53:59 +02:00
Daniel Chappuis
6732a8119c Fix issue with collision between a CollisionBody and a RigidBody in a DynamicsWorld 2018-05-29 21:44:56 +02:00
Daniel Chappuis
fe02f4ecc5 Fix issue with scaling in ConcaveMeshShape 2018-05-24 08:30:10 +02:00
Daniel Chappuis
82c7c5f29a Fix issue in broad-phase collision detection 2018-05-21 20:42:39 +02:00
Daniel Chappuis
681ebeba6b Update copyright date in license 2018-04-30 22:15:53 +02:00
Daniel Chappuis
b0f9cfd65a Fix compilation warnings 2018-04-21 20:03:44 +02:00
Daniel Chappuis
d5322ad745 Add comments in the code 2018-04-21 19:47:35 +02:00
Daniel Chappuis
d14e42be70 Refactor the way headers are included and use more forward declarations for faster compilation time 2018-04-20 07:13:39 +02:00
Daniel Chappuis
491702c05c Fix tests and fix compilation warnings 2018-04-16 18:52:02 +02:00
Daniel Chappuis
96c581ae9b Fix compilation warnings 2018-04-16 07:54:46 +02:00
Daniel Chappuis
e0c624205c Fix compilation warnings 2018-04-15 23:25:21 +02:00
Daniel Chappuis
5339b5ea4a Fix compilation warnings 2018-04-14 19:53:44 +02:00
Daniel Chappuis
4697b9fcef Fix issues with contact points reduction 2018-04-14 19:52:00 +02:00
Daniel Chappuis
1e4990ccbf Fix issue in Pair 2018-04-04 18:43:28 +02:00
Daniel Chappuis
fea3e44856 Fix memory leak in List, Map and Set 2018-04-04 18:37:24 +02:00
Daniel Chappuis
0307a1d9be Fix memory leaks in Map and Set 2018-04-04 07:31:49 +02:00
Daniel Chappuis
cea44dc235 Fix issue in List 2018-04-03 22:45:20 +02:00
Daniel Chappuis
235b36ac47 Fix issue with logger 2018-04-03 07:08:19 +02:00
Daniel Chappuis
cd897f1151 Fix compilation errors when logs or profiling is disabled 2018-03-29 07:16:50 +02:00
Daniel Chappuis
100cdbc64a Working on logger 2018-03-28 22:55:02 +02:00
Daniel Chappuis
71bfa6afce Remove setLocalScaling() method from CollisionShape and ProxyShape and use scaling only for HeightFieldShape, ConvexMeshShape and ConcaveMeshShape 2018-03-26 22:00:52 +02:00
Daniel Chappuis
1bc50de2c9 Working on logger 2018-03-19 23:02:13 +01:00
Daniel Chappuis
2e28b5ad8f Refactor profiler and add logger 2018-03-15 23:11:26 +01:00
Daniel Chappuis
393bb0ed88 Refactor profiler and start working on logger 2018-03-14 07:33:28 +01:00
Daniel Chappuis
cd2bc9665e Add WorldSettings class for world configuration settings 2018-03-04 19:10:32 +01:00
Daniel Chappuis
0f4d41e8fc Merge branch 'optimization' into develop 2018-02-26 07:33:58 +01:00
Daniel Chappuis
4177044f74 Replace testPointInside() and raycast() methods for ConvexMeshShape (do not used GJK anymore) and some small refactoring 2018-02-26 07:17:54 +01:00
Daniel Chappuis
6dac7e0916 Fix issue with clipping methods 2018-02-11 14:42:11 +01:00
Daniel Chappuis
1a787453e8 Replace std::pair by rp3d::Pair 2018-02-05 07:41:02 +01:00
Daniel Chappuis
e0fda18446 Replace malloc/free calls by use of the MemoryManager of ReactPhysics3D 2018-02-04 19:43:17 +01:00
Daniel Chappuis
b3e771838d Replace std::set by Set and fix issues with List and Map 2018-02-03 20:48:08 +01:00
Daniel Chappuis
220057a587 Remove the use of std::map and fix issues in Map class 2018-01-26 17:34:26 +01:00
Konstantinos Chatzilygeroudis
a82bd12383 Fix for compilation issues 2018-01-25 19:00:09 +01:00
Daniel Chappuis
624de80453 Merge branch 'optimization' into sat 2018-01-21 13:11:57 +01:00
Daniel Chappuis
010d7876ef Make sure we do not recompute automatically center of mass and inertia tensor when they are set by the user 2018-01-21 13:11:11 +01:00
Daniel Chappuis
301823729d Remove the use of std::vector 2018-01-20 17:30:36 +01:00
Daniel Chappuis
3a0cc1feac Working on Map 2018-01-19 17:50:30 +01:00
Daniel Chappuis
b1ecfb0fed Working on containers (List, Map) 2018-01-19 07:55:55 +01:00
Daniel Chappuis
b93e358f5b Fix issue with zero penetration depth in Sphere vs Capsule collision 2018-01-15 18:34:20 +01:00
Daniel Chappuis
c7f7a169f8 Refactor the getter/setter for inertia tensor of a RigidBody 2018-01-15 07:18:00 +01:00
Daniel Chappuis
27a451adcf Merge branch 'optimization' into develop 2018-01-14 11:05:21 +01:00
Daniel Chappuis
ceb27760cb Working on containers 2018-01-14 10:47:39 +01:00
Daniel Chappuis
261ffef616 Refactor memory allocation 2018-01-01 18:35:57 +01:00
Daniel Chappuis
8f126a75d6 Use List in HalfEdgeStructure with some changes in memory allocation 2017-12-27 20:53:09 +01:00
Daniel Chappuis
f2ee00ca68 Use List instead of std::vector compute segment clipping in SAT algorithm 2017-12-14 22:25:52 +01:00
Daniel Chappuis
47869627d1 Fix issue in Transform 2017-12-14 20:24:19 +01:00
Daniel Chappuis
7d20a746e9 Do not std::map to store mapping from rigid body to index in array 2017-12-14 15:09:56 +01:00
Daniel Chappuis
5392948518 Use inline constructors for mathematics objects (vectors, quaternion, matrices, ...) 2017-12-13 17:51:38 +01:00
Daniel Chappuis
2d0cb27538 Add List and DefaultAllocator classes 2017-12-12 22:53:00 +01:00
Daniel Chappuis
9066264189 Remove commented code 2017-12-12 22:36:19 +01:00
Daniel Chappuis
cf42e9f04c Optimizations in contact solver 2017-12-12 07:29:29 +01:00
Daniel Chappuis
9d761291d6 Small optimizations 2017-12-06 21:55:50 +01:00
Daniel Chappuis
4f76553c59 Many small optimizations 2017-12-04 22:14:52 +01:00
Daniel Chappuis
4cc024b85e Rename fields and methods in ContactPoint class 2017-11-29 23:43:55 +01:00
Daniel Chappuis
ebd715d2e0 Add data types 2017-11-28 17:53:50 +01:00
Daniel Chappuis
e754711a84 Remove unnecessary calls to Quaternion.getMatrix() 2017-11-28 17:46:45 +01:00
Daniel Chappuis
317dea90bd Remove Quaternion constructor with Euler angles and replace it by static fromEulerAngles() method 2017-11-28 17:26:13 +01:00
Daniel Chappuis
c8e9cca912 Compute the inverse quaternion using its conjugate 2017-11-26 12:07:58 +01:00
Daniel Chappuis
fea467f112 Add profiling in SAT algorithm methods 2017-11-25 17:51:14 +01:00
Daniel Chappuis
f09331c185 Remove unused cachedCollisionData variable 2017-11-22 22:58:31 +01:00
Daniel Chappuis
f403a6e804 Add temporal coherence for convex vs triangle collision detection 2017-11-22 22:43:27 +01:00
Daniel Chappuis
38bd462b91 Fix issue in SAT algorithm, use the correct penetration depth for each contact point 2017-11-13 18:42:39 +01:00
Daniel Chappuis
e9709c3db5 Refactor the Profiler. Now there is one profiler instance per CollisionWorld/DynamicsWorld instance instead of a static one 2017-11-10 19:57:50 +01:00
Daniel Chappuis
222636391e Use the true triangle face normal if contact is not on an edge in smooth triangle contact 2017-11-10 17:51:02 +01:00
Daniel Chappuis
de95e15147 Fix issue with the shape order in concave vs convex middle-phase collision detection 2017-11-08 21:28:00 +01:00
Daniel Chappuis
8bfa6dd137 Fix issue : the scaling factor was not used when recomputing AABB tree for concave mesh shape 2017-11-08 21:26:15 +01:00
Daniel Chappuis
013431487e Rename setScaling() to setLocalScaling() 2017-11-08 21:24:09 +01:00
Daniel Chappuis
b39bb3ba37 Initialize the timestep in the DynamicsWorld constructor 2017-11-08 21:14:21 +01:00
Daniel Chappuis
e91cded831 Update code documentation and fix warnings 2017-11-05 23:15:47 +01:00
Daniel Chappuis
6e322882eb Fix wrong world AABB computation that caused broad-phase collision misses 2017-11-05 23:10:55 +01:00
Daniel Chappuis
fd427c0337 Fix compilation errors because of removed files 2017-11-03 07:11:19 +01:00
Daniel Chappuis
002264a5a1 Remove unused files 2017-11-02 23:01:32 +01:00
Daniel Chappuis
ad0f805f53 Fix robustness issue in SAT Algorithm (convex polyhedron vs capsule) 2017-11-01 23:09:02 +01:00
Daniel Chappuis
6a69ef76c5 Fix issue with ProxyShape::mBroadPhaseId not set when body was sleeping or inactive 2017-11-01 23:07:56 +01:00
Daniel Chappuis
5da57a96c8 Fix issue with sphere and capsule SAT collision detection 2017-10-24 22:47:35 +02:00
Daniel Chappuis
cdaa297a78 Remove unused variable 2017-10-19 17:19:33 +02:00
Daniel Chappuis
c1295f1d7a Remove contactNormaldId attribute and fix typo 2017-10-19 07:26:11 +02:00
Daniel Chappuis
cdec7413c5 Improve capsule resting on another shape stability 2017-10-18 21:26:53 +02:00
Daniel Chappuis
0250d8c4bd Fix issue in SAT algorithm 2017-10-18 19:35:20 +02:00
Daniel Chappuis
de494bb0fd Changes and bug fixes in ContactManifold and ContactManifoldSet 2017-10-18 00:41:32 +02:00
Daniel Chappuis
d5617526ff Modify the policy to drop contact manifolds. First drop the old ones before the new ones 2017-10-12 20:07:39 +02:00
Daniel Chappuis
4a37ba3994 Add unit tests for the TriangleVertexArray 2017-10-09 23:34:35 +02:00
Daniel Chappuis
37e2c79cf2 Fix issue in ContactManifoldSet 2017-10-09 22:41:45 +02:00
Daniel Chappuis
38eff07d0d Fix issue and small changes in TriangleVertexArray 2017-10-09 22:36:39 +02:00
Daniel Chappuis
d62aa41974 Fix issue in ContactManifoldSet 2017-10-04 22:38:39 +02:00
Daniel Chappuis
cbfeb608df Fix bug and clean the pointers casting in TriangleVertexArray 2017-10-04 22:38:14 +02:00
Daniel Chappuis
310fef1c52 Fix issue with middle phase collision detection (AABB not computed in correct space) 2017-09-28 08:34:45 +02:00