AlexAegis / AlexAegis/rx_bevy

Feature: DampenedDelayOperator

Offen
#10 0 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @AlexAegis Auf GitHub ansehen
enhancement
Vorherrschende Sprache
Rust
Sterne
25
Forks
2
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

An operator that delays upstream signals, not by a flat time duration, but by a diminishing amount of time received by a observable parameter that emits a `Dampen` signal:

```rs
Dampen {
/// How much delay should be applied to an event received the same tick as this dampen event
initial_delay: Duration,
/// Time after delay returns to 0
dampening_length: Duration,
/// How to interpolate the delay between when it had started, and ended
easing: EasingFn,
}
```

- new dampen events overwrite the previous one.
- when dampening has expired, upstream events are forwarded to the destination as is without any scheduling.

### Additional context

- Consider how this meshes together with a more generic `delay_when(observable)` operator, which is not done yet. This dampening behavior is probably a specialization of that.

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.