Анимация спрайтов или тесты на пёсиках
Основу для работы анимации мы подготовили, и вот какая получилась логика:
При создании объекта (спрайта) задается целевая папка, в которой лежат картинки, а также флажок - анимированный спрайт или нет.
Возьмем в этот раз не статных котиков, а милых собачек из интернета и подготовим наши кадры (линия для выравнивания по носику):
Заливаем в папку в формате bmp и переименовываем в сухие порядковые номера. Создаем нашего первого анимированного актора:
И смотрим, какой результат у нас вышел (на самом деле повылезало куча багов в работе некоторых функций - успешно устранены):
Не слишком хорошо - всего 4 фрейма, которые сменяют друг друга со скоростью нашего FPS. Неплохо бы контролировать скорость смены кадров для спрайта, чтобы игра не вызывала приступы паники.
Скорость будем задавать в конструкторе класса, а управлять сменой кадров через функцию Tick, которая вызывается каждый фрейм:
Одна шиба - это хорошо, но веселее им в стайке, так что создадим сразу 5 собакенов, но, чтобы это было не впустую, протестируем на них частоту обновления кадров:
Запускаем, получаем!
Вот и все на сегодня, далее перейдем к обработке событий и коллизии)