Beim Gold-Drop im Projekt „Garden of Sacrifices“ (cbbf160bb7e8) ist jede Interpolation aus Subtract → Multiply → Add zusammengesetzt, pro Achse und Phase, dazu die Ease-Kurven aus weiteren Rechen-Nodes. Das waren gut 30 der 98 Nodes im Behavior Gold Pickup. Ein eigener Node macht solche Animationen kurz und lesbar.
Entwurf (vom User freigegeben, 2026-09-27: „lerp node bauen“)
Node Lerp (Kategorie data): Eingänge a (Standard 0), b (Standard 1), t (Standard 0), Ausgang result.
Einstellung Ease: Linear, Ease in, Ease out, Ease in-out. Die Kurven sind quadratisch (Ease in = t², Ease out = 1 - (1 - t)²).
t wird auf 0…1 begrenzt. Ein Zähler, der im letzten Frame über 1 hinausschießt, landet damit genau auf b und nicht dahinter. Wer extrapolieren will, rechnet weiter mit den Rechen-Nodes.
Danach wird Gold Pickup mit Lerp schlanker neu aufgebaut und nach Ablauf angeordnet (Gruppen, Notizen, Getter pro Spur). Das Verhalten bleibt gleich.
## Wunsch
Beim Gold-Drop im Projekt „Garden of Sacrifices“ (`cbbf160bb7e8`) ist jede Interpolation aus `Subtract` → `Multiply` → `Add` zusammengesetzt, pro Achse und Phase, dazu die Ease-Kurven aus weiteren Rechen-Nodes. Das waren gut 30 der 98 Nodes im Behavior `Gold Pickup`. Ein eigener Node macht solche Animationen kurz und lesbar.
## Entwurf (vom User freigegeben, 2026-09-27: „lerp node bauen“)
- **Node `Lerp`** (Kategorie data): Eingänge `a` (Standard 0), `b` (Standard 1), `t` (Standard 0), Ausgang `result`.
- **Einstellung `Ease`:** Linear, Ease in, Ease out, Ease in-out. Die Kurven sind quadratisch (Ease in = t², Ease out = 1 - (1 - t)²).
- **`t` wird auf 0…1 begrenzt.** Ein Zähler, der im letzten Frame über 1 hinausschießt, landet damit genau auf `b` und nicht dahinter. Wer extrapolieren will, rechnet weiter mit den Rechen-Nodes.
- Danach wird `Gold Pickup` mit `Lerp` schlanker neu aufgebaut und nach Ablauf angeordnet (Gruppen, Notizen, Getter pro Spur). Das Verhalten bleibt gleich.
Eingänge a (Standard 0), b (1), t (0), Ausgang result, Kategorie data neben Clamp.
Einstellung Ease: Linear, In, Out, In-out, alle quadratisch. Die Zeile zeigt z. B. Ease: Out.
t wird auf 0…1 begrenzt. Ein Timer, der im letzten Frame über 1 hinausschießt, landet genau auf b.
Code: src/core/graph/nodes/data/Lerp.ts, registriert in nodes/index.ts.
Erster Einsatz: „Gold Pickup“ in Garden of Sacrifices (Revision 5179). Sprung und Flug laufen dort über 4 Lerps, das hat 12 Rechen-Nodes gespart. Alter und neuer Graph haben sich headless mit gleichem Zufall und Laufweg über 400 Frames nicht unterschieden (7 Durchläufe). Eine verbogene Ease-Kurve fällt dabei auf.
7 neue Fälle im Node-Katalog. Gegenprobe: ohne die Begrenzung von t fallen 2.
e2e 6z-iii (2 Checks): „lerp“ in der Palette legt einen linearen Lerp an, „Out“ im Inspector landet im Node und in der Zeile. GM_STEPS=1-6: 267 Checks grün.
Check-Summe 1459 in README und Wiki, nur gerechnet.
Wiki:Behaviors (Eintrag zu Lerp), Development (Summe), Commit 7c8d029.
Umgesetzt in 320d3e2.
**Der Node**
- Eingänge `a` (Standard 0), `b` (1), `t` (0), Ausgang `result`, Kategorie *data* neben `Clamp`.
- Einstellung *Ease*: Linear, In, Out, In-out, alle quadratisch. Die Zeile zeigt z. B. `Ease: Out`.
- `t` wird auf 0…1 begrenzt. Ein Timer, der im letzten Frame über 1 hinausschießt, landet genau auf `b`.
- Code: `src/core/graph/nodes/data/Lerp.ts`, registriert in `nodes/index.ts`.
**Erster Einsatz:** „Gold Pickup“ in *Garden of Sacrifices* (Revision 5179). Sprung und Flug laufen dort über 4 Lerps, das hat 12 Rechen-Nodes gespart. Alter und neuer Graph haben sich headless mit gleichem Zufall und Laufweg über 400 Frames nicht unterschieden (7 Durchläufe). Eine verbogene Ease-Kurve fällt dabei auf.
**Tests**
- `./check.sh`: 178 Dateien, 2583 Tests, `CHECK EXIT 0`.
- 7 neue Fälle im Node-Katalog. Gegenprobe: ohne die Begrenzung von `t` fallen 2.
- e2e 6z-iii (2 Checks): „lerp“ in der Palette legt einen linearen Lerp an, „Out“ im Inspector landet im Node und in der Zeile. `GM_STEPS=1-6`: 267 Checks grün.
- Check-Summe 1459 in README und Wiki, nur gerechnet.
**Wiki:** *Behaviors* (Eintrag zu `Lerp`), *Development* (Summe), Commit 7c8d029.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Wunsch
Beim Gold-Drop im Projekt „Garden of Sacrifices“ (
cbbf160bb7e8) ist jede Interpolation ausSubtract→Multiply→Addzusammengesetzt, pro Achse und Phase, dazu die Ease-Kurven aus weiteren Rechen-Nodes. Das waren gut 30 der 98 Nodes im BehaviorGold Pickup. Ein eigener Node macht solche Animationen kurz und lesbar.Entwurf (vom User freigegeben, 2026-09-27: „lerp node bauen“)
Lerp(Kategorie data): Eingängea(Standard 0),b(Standard 1),t(Standard 0), Ausgangresult.Ease: Linear, Ease in, Ease out, Ease in-out. Die Kurven sind quadratisch (Ease in = t², Ease out = 1 - (1 - t)²).twird auf 0…1 begrenzt. Ein Zähler, der im letzten Frame über 1 hinausschießt, landet damit genau aufbund nicht dahinter. Wer extrapolieren will, rechnet weiter mit den Rechen-Nodes.Gold PickupmitLerpschlanker neu aufgebaut und nach Ablauf angeordnet (Gruppen, Notizen, Getter pro Spur). Das Verhalten bleibt gleich.Umgesetzt in
320d3e2.Der Node
a(Standard 0),b(1),t(0), Ausgangresult, Kategorie data nebenClamp.Ease: Out.twird auf 0…1 begrenzt. Ein Timer, der im letzten Frame über 1 hinausschießt, landet genau aufb.src/core/graph/nodes/data/Lerp.ts, registriert innodes/index.ts.Erster Einsatz: „Gold Pickup“ in Garden of Sacrifices (Revision 5179). Sprung und Flug laufen dort über 4 Lerps, das hat 12 Rechen-Nodes gespart. Alter und neuer Graph haben sich headless mit gleichem Zufall und Laufweg über 400 Frames nicht unterschieden (7 Durchläufe). Eine verbogene Ease-Kurve fällt dabei auf.
Tests
./check.sh: 178 Dateien, 2583 Tests,CHECK EXIT 0.tfallen 2.GM_STEPS=1-6: 267 Checks grün.Wiki: Behaviors (Eintrag zu
Lerp), Development (Summe), Commit 7c8d029.