четверг, 20 ноября 2014 г.

Стрельба и погоня

Не так давно мне подвернулся интересный заказ. В одной из российских школ милиции где обучают курсантов ГИБДД (не знаю как правильно называются такие учебные заведения), внедрялась система электронного тира. Мне предоставилась возможность разработать одну из многочисленных игр-стрелялок, которые составляли тренировочный комплекс этой самой системы электронного тира. Игры проецируются на экран, а курсанты из лазерных (и даже из боевых) пистолетов стреляют по виртуальным мишеням.

Суть конкретно моей игры заключается в имитации погони сотрудников ГИБДД за автомобилем преступников. Курсанту необходимо "стрелять" по задним колёсам авто, с целью пробить шины и заставить нарушителей остановиться. Сделать это мышкой на компьютере проще простого, достаточно поймать курсором колесо и кликнуть на него. Однако в системе электронного тира, из пистолета попасть по колесам очень не просто, так как машина постоянно виляет, да и расстояние для стрельбы (от курсанта до экрана) составляет, как правило, 10 метров.



На разработку игры у меня было всего 3 дня. Изначально я понятия не имел, как я сделаю симулятор погони по трассе с перспективой (считай что обычную 3D гонку). В голове не было четкого представления ни структуры подобной игры, ни того какие готовые решения использовать, чтобы облегчить себе задачу (2D движок или 3D движок).
Поразмыслив, я понял что времени на изучение 3D движка нет, а 2D движок мне вряд ли как-то поможет симулировать нужное движение по трассе. В итоге решил, что можно просто сделать прямую линейную перспективу шоссе, с мелькающими фонарными столбами и разметкой на дороге, добавить небольшое покачивание и вот эффект присутствия в мчащимся автомобиле появляется во всей красе.


Сел программировать на чистом AS3.0, без всяких движков. Спасибо форуму Demiart, где нашел хороший урок по созданию линейных перспектив. Модели автомобилей собирал и анимировал в Swift3D, после чего импортировал их в файлы .swf, которые в свою очередь экспортировал в проект с игрой.


Итоговым результатом заказчик остался доволен, так как я всё сделал в рамках технического задания, учитывая все пожелания и требования, и не добавляя лишней "отсебятины". Небольшие вопросы были по поводу минималистской графики, но за выделенные 3 дня я не успел уделить достаточно внимания этому вопросу.

Как всегда игра под спойлером. 

Стреляй по колёсам!:

Комментариев нет:

Отправить комментарий