Fade: 32 ступени яркости — на глаз неотличимо от оригинальных 64
Шестнадцать ступеней на 2,13 с давали различимую лесенку (0,13 с на шаг). Тридцать две меняются каждые 66 мс — это уже слитное затухание. Запас на них есть: ступень стоит 487 тысяч тактов, тридцать три съедают около сорока кадров из ста шести, остальное цикл ждёт луча. Длительность каждого fade остаётся оригинальной (128 тиков), поэтому сумма «fade in + сцена + fade out» совпадает с SDLPoP без правки самих сцен. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -192,10 +192,10 @@ void pop_ui_palette_dim(uint8_t dim_step, uint8_t keep_ui) __banked
|
||||
uint8_t mul = (uint8_t)(POP_PAL_DIM_BLACK - dim_step);
|
||||
uint16_t v = 0;
|
||||
|
||||
/* Без умножения вовсе: значение растёт на mul/16 с каждым шагом,
|
||||
* дробная часть копится в младших четырёх битах аккумулятора. */
|
||||
/* Без умножения вовсе: значение растёт на mul/32 с каждым шагом,
|
||||
* дробная часть копится в младших пяти битах аккумулятора. */
|
||||
for (i = 0; ; i++) {
|
||||
lut[i] = (uint8_t)(v >> 4);
|
||||
lut[i] = (uint8_t)(v >> 5);
|
||||
v += mul;
|
||||
if (i == 255) break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user