SprPoP: подгонка молнии под музыку снята — причина устранена
PV_MAGIC_LEAD двигал жест заклинания (замах, шаг назад, вспышка) на 100 тиков (1,67 с) раньше сценария: сцена была render-bound, шла ~49 тиков/с вместо 60, а реплика играла по реальному времени — кода приходила раньше молнии. После перевода сцены на единые часы и блочную отрисовку подгонка стала вредной: молния била больше чем на секунду РАНЬШЕ коды (проверка пользователем). Ставим 0; константу оставляем на месте — если запись другого набора (mt32/ogg) разъедется, крутить надо её. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -83,26 +83,24 @@ enum {
|
||||
PV_MUS_4_LOAD = PV_DIALOG1_START + 54, /* подкачка m52 */
|
||||
PV_WALK2_START = PV_DIALOG1_START + 176,
|
||||
PV_DIALOG2_START = PV_DIALOG1_START + 416,
|
||||
/* ЗАКЛИНАНИЕ СДВИНУТО РАНЬШЕ СЦЕНАРИЯ — ПОДГОНКА ПОД МУЗЫКУ.
|
||||
/* ПОДГОНКА ЗАКЛИНАНИЯ ПОД МУЗЫКУ СНЯТА (2026-08-28): теперь 0.
|
||||
*
|
||||
* Сцена render-bound: кадр рисуется дороже своего бюджета, кадровая
|
||||
* ветка пейсинга догона не имеет, и анимация идёт ~49 тиков в секунду
|
||||
* вместо 60. Реплика Джафара при этом играет по РЕАЛЬНОМУ времени и
|
||||
* успевает кончиться, когда шкала стоит на 1854 вместо 2028 (замер в
|
||||
* MAME 2026-08-27 зондом на конец трека: длина насосу отдана полная,
|
||||
* 1403 порции, курсор дошёл до последней страницы — трек доигрывает
|
||||
* целиком, отстаёт именно картинка).
|
||||
* История: сцена была render-bound — кадр рисовался дороже своего
|
||||
* бюджета, кадровая ветка пейсинга догона не имела, и анимация шла
|
||||
* ~49 тиков в секунду вместо 60 (замер 2026-08-27). Реплика Джафара
|
||||
* при этом играет по РЕАЛЬНОМУ времени, поэтому кода приходила
|
||||
* примерно на секунду раньше молнии, и жест целиком (замах, шаг
|
||||
* назад, вспышка) сдвигали раньше сценария на подобранные на слух
|
||||
* 100 тиков.
|
||||
*
|
||||
* Из-за этого кода реплики приходила примерно на секунду раньше
|
||||
* молнии. Честное лечение — удешевить кадр сцены; до тех пор двигаем
|
||||
* жест целиком (замах, шаг назад, вспышка), чтобы он не сломался
|
||||
* внутри себя. Величина подобрана НА СЛУХ и уточняется прогоном:
|
||||
* расчётные полсотни тиков (секунда отставания при ~49 тиках/с) на
|
||||
* слух почти не изменили картины, поэтому взято вдвое больше.
|
||||
*
|
||||
* Эффектов дверей это не касается: у них и звук, и картинка идут по
|
||||
* одной и той же шкале и разъехаться не могут. */
|
||||
PV_MAGIC_LEAD = 100,
|
||||
* Причину убрали: отрисовка разложена по кадровым интервалам
|
||||
* (pv_restore_bg), сцена идёт по единственным часам — кадрам луча, —
|
||||
* и подкачка трека оплачивается интервалом (pop_music_load_step).
|
||||
* После этого подгонка стала вредной: молния била больше чем на
|
||||
* секунду раньше коды (проверка пользователем 2026-08-28). Константу
|
||||
* оставляем на месте — если запись другого набора (mt32/ogg) снова
|
||||
* разъедется, крутить надо её, а не тайминги сценария. */
|
||||
PV_MAGIC_LEAD = 0,
|
||||
PV_RAISE_START = PV_DIALOG1_START + 696 - PV_MAGIC_LEAD,
|
||||
PV_STEPBACK_START = PV_DIALOG1_START + 703 - PV_MAGIC_LEAD,
|
||||
PV_MAGIC_START = PV_DIALOG1_START + 822 - PV_MAGIC_LEAD,
|
||||
|
||||
Reference in New Issue
Block a user