DiNGS – программирование игр... Основные понятия.
АрхивПрограммазм (архив)Продолжение разговора о DiNGS. Краткий словарь разработчика игр.
Продолжение вчерашней статьи…
ЧТО ТАКОЕ ФОН?
В каждой игре присутствует какое-то фоновое изображение, где разворачивается игровое действие. Например, в космических шутерах, где маленький кораблик выносит шквальным огнем полчища злобных пришельцев все это происходит на фоне величественного космоса. Фон в простейшем случае можно сделать из нарисованной в любом графическом редакторе картинки в формате BMP имеющей палитру в 16 миллионов цветов и размер равный разрешению экрана дисплея в коем планирует функционировать ваш шутер. Фон также может состоять из множества небольших спрайтов движущихся с разной скоростью, что добавит в игру ощущение объема. В DiNGS фоновая картинка выводится с помощью функции (подпрограммы) – loadBMP “название_картинки.bmp”
ЧТО ТАКОЕ СПРАЙТ?
На фоне космоса движутся маленькие игровые объекты - корабли, астероиды, призы – все это и есть спрайты (картинки). Мы можем запрограммировать управление ими или поручить часть объектов подпрограммам компьютера. Смешно бы было наблюдать как вы, управляя корабликом и уничтожая пришельцев, так же управляете и этими пришельцами. Поэтому обычно под вашим управлением находится один игровой объект состоящий из спрайта (или группы спрайтов), а всеми остальными управляет компьютер.
ЧТО ТАКОЕ КОЛЛИЗИЯ?
Коллизия – обработка столкновения спрайтов. Этим в Dings занимается функция CALLBOX, которая с помощью одного из своих параметров сообщает, было ли столкновение нужных для игрового действия объектов (об этом будет рассказано более подробно ниже). Попадание снаряда во вражеский кораблик, отбитый шар в арканоиде, перепрыгивание на летающие островки в платформенных аркадах – все это коллизия (столкновение). Получив сведения, что объекты столкнулись, мы можем задать некие действия. Например, если произошло столкновение (коллизия) летящего шара и биты, тогда нужно изменить направление полета шарика на противоположное.
(продолжение следует)