|
engine: FX-слой one-shot эффектов + пресеты (render/fx/)
Инфраструктура визуальных эффектов: FxLayer (Container + Updatable, тикается один раз в engine.fx, сам вычищает закончившиеся) и пресеты — кольцо/волна/ телеграф зоны (FxRing, repeat/shapes/fill), всплывающий текст (FxFloatText), растворение/проявление с защитой от двойного destroy (FxFade), pop-появление с овершутом (FxPop), шлейф (FxTrail), фабрики частиц spark/smoke/ember/dust. Чистая математика сэмплов — fxSim.ts (headless-тесты); backOut в easing; SpriteFlash + destroyed (самозачистка из реестра); Updatables.forEach. Доки: render.md (раздел FX), core.md (engine.fx), recipes.md, practices.md. Co-Authored-By: Claude Code <noreply@anthropic.com> |
|---|
|
|
| docs/engine/core.md |
|---|
| docs/engine/practices.md |
|---|
| docs/engine/recipes.md |
|---|
| docs/engine/render.md |
|---|
| packages/engine/src/core/Updatables.ts |
|---|
| packages/engine/src/core/easing.ts |
|---|
| packages/engine/src/index.ts |
|---|
| packages/engine/src/render/__tests__/spriteFx.test.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxFade.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxFloatText.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxLayer.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxPop.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxRing.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/FxTrail.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/__tests__/FxLayer.test.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/__tests__/fxSim.test.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/fxSim.ts 0 → 100644 |
|---|
| packages/engine/src/render/fx/particlePresets.ts 0 → 100644 |
|---|
| packages/engine/src/render/spriteFx.ts |
|---|