06
Сен
2021

Вот это поворот!

Начал разбираться с динамической задержкой и просто офигел )) Оказывается, она все-таки все еще встроена, с тех самых 90-х. И я вспомнил, как именно Женя ее реализовал — задержка вычисляется в зависимости от размера спрайта Принца. Женя тогда делал движок, который выводил только спрайты самого Принца. В каждом движении куча спрайтов и все они разных размеров. Чтобы фазы менялись с одной скоростью, Женя сделал расчет задержки на каждом такте именно относительно размера только что выведенного спрайта Принца. Так это все дело и осталось. Но потом-то добавились другие двигающиеся штуки — всякие там пилы, шипы, решетки и самое страшное — второй персонаж, стражник! Все это, конечно, внесло дополнительные тормоза, а вот их никто не учитывал и не вычитал из посчитанной задержки, которая продолжала вноситься лишь на базе размера спрайта Принца.

Выкинув задержку вообще (для теста) я получил вот такую скорость работы движка:

Сделал пример для фехтования. В начале ролика записано как работало раньше, потом идет запись работы опять без какой-либо задержки. Фехтование-то, оказывается, может быть куда живее!

Оказывается, был запас по скорости-то! Теперь осталось выровнять все с помощью новой динамической задержки, по таймеру.

А также, сегодня я исправил самый злостный глюк, который меня уже год бесил, наверное 🙂 Иногда, когда Принц падал вместе с двумя плитами одновременно, на экране оставался мусор. И теперь это пофикшено! Сегодня определенно удачный день.

 

Share

You may also like...

2 комментария

  1. YRabbit:

    Семён Семёныч!!!

Добавить комментарий

Ваш адрес email не будет опубликован.