L9-INVERT: зафиксированы решения по кэшу зеркальных кадров и порядку работ
Кэш — ленивый постраничный, живёт до конца уровня; ENTER-ROOM-FAST делается шагом 4 на готовом gfx_copy_rect. Открытых вопросов в плане не осталось. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -209,7 +209,15 @@ void gfx_copy_rect(uint8_t src_page, int sx, int sy,
|
||||
- **кэш ключуется по СТРАНИЦЕ атласа**, а не по кадру: страница = 8 кадров,
|
||||
3-10 КБ, ~0.2-0.4 растрового кадра на переворот.
|
||||
|
||||
Стратегия наполнения кэша — см. открытый вопрос №1 внизу.
|
||||
**Стратегия наполнения — ЛЕНИВЫЙ ПОСТРАНИЧНЫЙ** (решение пользователя
|
||||
2026-08-12): страница переворачивается при первом обращении к ней в
|
||||
перевёрнутом режиме. Реально в ходу 5-10 страниц из 34, и если игрок зелье не
|
||||
трогал, не тратится ни такта, ни страницы.
|
||||
|
||||
**Время жизни кэша — ДО КОНЦА УРОВНЯ**: освобождаем страницы при смене
|
||||
уровня, а не при снятии эффекта. На уровне 9 переворот случается минимум
|
||||
дважды (второе зелье возвращает всё назад), плюс его снимает смерть Кида —
|
||||
готовить пачку заново каждый раз было бы обидно.
|
||||
|
||||
После [UI-SPRITES](../roomtest/TASKS_OPEN.md#ui-sprites) страницы `kid27` и
|
||||
`g0` станут чисто «полевыми» (деления HP уедут в константы резидента), и
|
||||
@@ -293,11 +301,13 @@ void gfx_copy_rect(uint8_t src_page, int sx, int sy,
|
||||
- **fore-слой поверх персонажа**: он рисуется по футпринту спрайта, а
|
||||
футпринт после переворота другой — проверить именно на сцене с колоннами.
|
||||
|
||||
# Открытые вопросы (ответы пользователя нужны до II.4)
|
||||
# Решения пользователя (2026-08-12)
|
||||
|
||||
1. Стратегия наполнения кэша зеркальных кадров: ленивый постраничный (по
|
||||
первому обращению), разом при входе на уровень с зельем типа 4, или офлайн
|
||||
в упаковщиках.
|
||||
2. Время жизни кэша: освобождать страницы при снятии эффекта / при выходе с
|
||||
уровня / держать до конца программы.
|
||||
3. ENTER-ROOM-FAST — делать сразу (шаг 4) или отложить до закрытия L9-INVERT.
|
||||
1. **Кэш зеркальных кадров — ленивый постраничный**, наполняется по первому
|
||||
обращению (см. II.4).
|
||||
2. **Живёт до конца уровня**, освобождается при смене уровня.
|
||||
3. **ENTER-ROOM-FAST делается сразу**, шагом 4 — на готовом `gfx_copy_rect`,
|
||||
до того как на копию завяжется переворот.
|
||||
|
||||
Открытых вопросов не осталось: план исполняется как есть, новые развилки —
|
||||
только если разведка I.0 даст отрицательный результат по Р1.
|
||||
|
||||
Reference in New Issue
Block a user