Sébastien Crozet
d858ae4c4e
Make the 2D add-remove demo more intereting.
2021-09-12 01:49:09 -07:00
Sébastien Crozet
5e133aac92
Fix broad-phase bug that could result in missed collision pairs when an object leaves then re-enter a region
2021-09-12 01:49:09 -07:00
Kane Rogers
3f223aaf9e
Fix bug with colliders without rigid bodies
...
- When `NarrowPhase` adds a collision pair, it checks to make sure that they don't have the same parent
- In the case where the colliders have no parents (eg. they are not attached to a `RigidBody`) this yields a false positive.
- The fix is to ensure that colliders have a parent before ignoring the pair.
2021-08-26 10:29:24 +02:00
Sébastien Crozet
37a90a5409
Add missing comments.
2021-07-30 11:09:15 +02:00
Crozet Sébastien
729e510c00
Make BroadPhasePairEvent and ColliderPair public.
...
Otherewise it is impossible to use BroadPhase::update properly.
2021-07-30 11:09:15 +02:00
Benjamin Saunders
92b8580761
Update intersection graph regardless of active_events
2021-07-14 20:16:19 +02:00
Crozet Sébastien
8e0aa2ac79
Add methods to set the translation or rotation wrt. a collider and its parent.
2021-07-12 10:10:59 +02:00
Waridley
9233a855f0
impl more traits for components
2021-07-11 18:22:39 +02:00
Waridley
62d6b0651b
Derive Clone for IslandManager
...
also fix typo
2021-06-09 11:07:37 +02:00
Crozet Sébastien
ff6c75f3bd
Fix collider removal from narrow-phase when the same collider is listed twice.
2021-06-08 18:23:40 +02:00
Crozet Sébastien
fdd370e51a
Release v0.9.0
2021-06-02 18:01:23 +02:00
Sébastien Crozet
c7b876e2f7
Merge pull request #173 from DasEtwas/must-use-pub
...
Add #[must_use] to builders, expose more fields
2021-06-02 17:37:13 +02:00
Sébastien Crozet
ad2fcf755a
Merge pull request #176 from sdfgeoff/add_collider_shared_shape_method
...
Created a method to retrieve the SharedShape from a collider
2021-06-02 17:32:56 +02:00
Crozet Sébastien
bde6657287
Fix tests and wasm build.
2021-06-02 16:22:40 +02:00
Crozet Sébastien
7153eb7779
Add ActiveCollisionTypes to easily enable collision-detection between two non-static rigid-body.
2021-06-01 17:59:07 +02:00
Crozet Sébastien
dbb3c8f43b
CCD: take collision groups into account
2021-06-01 14:56:24 +02:00
Crozet Sébastien
826ce5f014
Rework the event system
2021-06-01 12:36:01 +02:00
Crozet Sébastien
1bef66fea9
Add prelude + use vectors for setting linvel/translation in builders
2021-05-25 11:00:13 +02:00
DasEtwas
716c343979
Add #[must_use] to builders, expose more fields
2021-05-06 20:41:13 +02:00
Crozet Sébastien
f350ac35d9
Fix crash in broad-phase after shape modification.
...
Fix #180 and #177
2021-05-01 10:21:57 +02:00
Crozet Sébastien
2dfbd9ae92
Add comments.
2021-04-30 11:37:58 +02:00
Crozet Sébastien
ac8ec8e351
Fix tests.
2021-04-29 13:03:54 +02:00
Crozet Sébastien
705876f5e5
Restore the collision pipeline
2021-04-29 10:26:44 +02:00
Crozet Sébastien
3cab54b880
Fix some warnings.
2021-04-27 14:37:39 +02:00
Crozet Sébastien
c32da78f2a
Split rigid-bodies and colliders into multiple components
2021-04-26 18:00:50 +02:00
Geoffrey Irons
b8a31e0869
Created a method to retrieve the SharedShape from a collider
...
In my case this is for creating a compound shape from a set of existing colliders
2021-04-18 12:51:44 +12:00
Crozet Sébastien
88b7a5588b
Add comment regarding the fix.
2021-04-03 12:12:12 +02:00
Crozet Sébastien
5a0e6471cd
Fix crash caused by a collider being remove before the first timestep.
2021-04-03 12:03:49 +02:00
Crozet Sébastien
d9d89afb6e
Fix determinism problem in the broad-phase after snapshot restoration.
2021-04-02 16:23:20 +02:00
Crozet Sébastien
e66740e950
Release v0.7.0
2021-04-02 14:20:51 +02:00
Crozet Sébastien
a484511718
ColliderSet::handle_user_changes - don't drain the set of modified colliders.
2021-03-31 18:12:00 +02:00
Crozet Sébastien
a6b8b4b638
Fix tests.
2021-03-31 17:46:59 +02:00
Crozet Sébastien
365cce73f5
Make the collider shape mutable.
2021-03-31 14:07:32 +02:00
Crozet Sébastien
d2ee642053
CCD: take angular motion and penetration depth into account in various thresholds.
2021-03-30 17:10:50 +02:00
Crozet Sébastien
8173e7ada2
Allow collider modification after its insersion to the ColliderSet.
2021-03-29 14:54:54 +02:00
Crozet Sébastien
dec3e4197f
Small refactoring of the PhysicsPipeline.
2021-03-28 11:54:33 +02:00
Crozet Sébastien
7306821c46
Attenuate the warmstart impulse for CCD contacts.
...
CCD contacts result in very strong, instantaneous, impulses. So it is preferable to attenuate their contribution to subsequent timesteps to avoid overshooting.
2021-03-28 11:27:07 +02:00
Crozet Sébastien
710dd8d71e
Fix bug wher ethe broad-phase could miss some contacts pairs.
2021-03-26 18:16:51 +01:00
Crozet Sébastien
97157c9423
First working version of non-linear CCD based on single-substep motion-clamping.
2021-03-26 18:16:27 +01:00
Crozet Sébastien
326469a1df
Fix the last few bugs and unbounded memory usage.
2021-03-17 09:34:56 +01:00
Crozet Sébastien
d82a675b46
Experiment with a smaller region power basis.
2021-03-13 19:32:27 +01:00
Crozet Sébastien
b2c0f62003
Some tunning of the way layers are attributed to a collider.
2021-03-13 19:19:12 +01:00
Crozet Sébastien
3a1502be74
First complete implementation of the hierarchical SAP.
2021-03-13 18:00:58 +01:00
Crozet Sébastien
a967ace7d4
Start implementing SAPLayer creation and insertion.
2021-03-08 18:27:06 +01:00
Crozet Sébastien
7983c25606
Start introducing SAP layers.
2021-03-08 15:32:04 +01:00
Crozet Sébastien
0b80bc827c
Split the broad-phase code into multiple files.
2021-03-08 15:32:04 +01:00
Sébastien Crozet
808ea02672
Merge pull request #141 from EmbarkStudios/per-collider-mass-props
...
Per collider mass props
2021-03-08 10:38:31 +01:00
Emil Ernerfeldt
0370e7e37d
Store either density or mass properties but not both
2021-03-08 10:12:12 +01:00
Emil Ernerfeldt
05614dc471
docstring/spelling
...
Co-authored-by: Sébastien Crozet <sebastien@crozet.re >
2021-03-08 10:04:28 +01:00
Emil Ernerfeldt
22a402983c
docstring/spelling
...
Co-authored-by: Sébastien Crozet <sebastien@crozet.re >
2021-03-08 10:04:21 +01:00