Commit Graph

174 Commits

Author SHA1 Message Date
Daniel Chappuis
9fb8580830 Replacing ProxyShape data by corresponding component data 2019-01-11 07:38:55 +01:00
Daniel Chappuis
176186e126 Replacing ProxyShape data by corresponding component data 2019-01-11 07:25:35 +01:00
Daniel Chappuis
5a1d10a991 Add proxy-shapes mapping in ProxyShapesComponents 2019-01-10 07:41:10 +01:00
Daniel Chappuis
4e438d3ccc Add ProxyShapesComponents 2019-01-08 18:39:36 +01:00
Daniel Chappuis
3d892a6689 Handle sleeping bodies in TransformComponents 2018-12-28 22:15:34 +01:00
Daniel Chappuis
8b6249829a Add Transform component 2018-12-26 23:33:36 +01:00
Daniel Chappuis
fa9b1817fe Start working on ECS 2018-12-23 23:18:05 +01:00
Daniel Chappuis
b3cd791146 Make possible for the user to use a custom pool memory allocator 2018-09-26 18:31:21 +02:00
Daniel Chappuis
681ebeba6b Update copyright date in license 2018-04-30 22:15:53 +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
96c581ae9b Fix compilation warnings 2018-04-16 07:54:46 +02:00
Daniel Chappuis
100cdbc64a Working on logger 2018-03-28 22:55:02 +02:00
Daniel Chappuis
1bc50de2c9 Working on logger 2018-03-19 23:02:13 +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
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
c7f7a169f8 Refactor the getter/setter for inertia tensor of a RigidBody 2018-01-15 07:18:00 +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
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
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
6a69ef76c5 Fix issue with ProxyShape::mBroadPhaseId not set when body was sleeping or inactive 2017-11-01 23:07:56 +01: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
4a97c2ca97 Refactor collision detection 2017-01-08 19:56:59 +01:00
Daniel Chappuis
c597815191 Remove unecessary variables in constraints and cache inverse inertia world tensor of bodies 2016-09-26 22:51:30 +02:00
Daniel Chappuis
e014f00afc Refactor memory allocator and refactor contact solver 2016-09-21 22:03:45 +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
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
4bad013c91 Make GJK/EPA collision detection more robust 2016-07-05 21:34:44 +02:00
Daniel Chappuis
ae7bec43c4 Allow for zero mass rigid body 2016-05-18 21:39:11 +02:00
Daniel Chappuis
2640fbd48a Start replacing NULL constant by nullptr 2016-05-15 19:25:58 +02:00
Daniel Chappuis
8a75c867a5 Change version number of the library 2016-04-11 20:15:20 +02:00
Daniel Chappuis
fc1f844135 Merge branch nanogui into develop 2016-03-21 20:57:42 +01:00
Daniel Chappuis
63fb6261a3 Fix issue with linear/angular damping 2016-03-20 22:53:05 +01:00
Daniel Chappuis
d0481e0901 Fix compilation errors/warnings on Linux 2016-02-22 23:26:50 +01:00
Daniel Chappuis
d6580f94aa Fix conflicts when merging triangularmeshes into develop 2016-02-15 20:14:30 +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
fc91540a79 Add ContactManifoldSet class 2015-10-02 07:04:05 +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
Colin
22d90659bb Final fix :) 2015-08-26 04:30:07 -06:00
Colin
494f866357 Fix merge mess 2015-08-26 04:23:44 -06:00
Colin
87b88fc953 Merge branch 'develop' of https://www.github.com/DanielChappuis/reactphysics3d into develop 2015-08-26 04:01:18 -06:00
Colin
1468f8f13c Replace dynamic_cast with static_cast 2015-08-24 13:36:30 -06:00
Daniel Chappuis
f376e2043f Modify the CollisionBody::setTransform() and Body::setIsSleeping() methods 2015-06-25 22:27:20 +02:00
Daniel Chappuis
6279867964 Remove the use of the old transform variable in CollisionBody 2015-06-16 22:46:43 +02:00
Daniel Chappuis
fb90eac003 The time accumulator and frame interpolation should now be done outside the physics engine 2015-04-18 18:33:25 +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
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
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
adc53c6523 Make possible to use the CollisionBody::setIsActive() method to activate or deactivate the simulation of a given body 2014-11-09 18:53:50 +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
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
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
a983026094 Inflate the AABB in direction of linear motion in Dynamic AABB tree 2014-07-03 00:13:30 +02:00
Daniel Chappuis
114360337c Fix issue in RigidBody::applyForce() method 2014-06-29 21:59:06 +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
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
1812402617 Add support for the different body types (static, kinematic, dynamic) 2013-11-21 23:24:11 +01:00
Daniel Chappuis
7432a87149 Modify cmake files and add comments in the code 2013-10-06 16:03:25 +02:00
Daniel Chappuis
b5ae655b0a Add comments, modify method names, change solver nb of iterations, ... 2013-09-27 18:43:45 +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
8db7823433 Continue to implement the sleeping technique 2013-09-03 19:30:43 +02:00
Daniel Chappuis
475ec5be5f Iterate over the islands to solve the contacts and joints 2013-08-31 19:03:21 +02:00
Daniel Chappuis
f1d29b5123 Implement the islands computation 2013-08-26 21:28:48 +02:00
Daniel Chappuis
2e6f571b98 Implement linear and angular velocity damping 2013-08-06 20:51:56 +02:00
Daniel Chappuis
e081661d8c Add the Material class to store the material properties of a rigid body 2013-07-10 00:17:14 +02:00
Daniel Chappuis
d58db2e6f2 Remove the gravity from the rigid body external force and allow the user to enable/disable the gravity for each body 2013-06-27 19:53:13 +02:00
Daniel Chappuis
ce0078c2a9 Implement the non-linear-gauss-seidel position error correction 2013-06-26 22:28:31 +02:00
Daniel Chappuis
1c0726d9d6 Add the fixed joint 2013-06-12 20:43:54 +02:00
Daniel Chappuis
da78e5d79a Modifications in the BallAndSocketJoint to make it work 2013-05-04 09:20:53 +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
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
5a373cf27b Clean the code and modify the date in the license text 2013-03-02 16:26:18 +01:00
Daniel Chappuis
e84f6468c8 Clean the code 2013-02-19 23:16:20 +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
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
29e5f2b7b4 Use the name CollisionShape instead of Collider for the collision shapes 2012-08-04 00:34:30 +02:00
Daniel Chappuis
c7faae9b20 Add the bodyindex type to represent the index number of a body 2012-08-02 23:33:56 +02:00