разработка игр, программирование, сценарии, графика и музыка

English По-русски

Движок Yume: поддержка геймпадов, опции, больше частиц

Продвигаюсь вперед в своем игровом 3D движке, который носит кодовое название Yume (夢, что в переводе с японского означает "мечта").

Среди незначительных технических исправлений есть несколько важных дополнений, в том числе — поддержка геймпада.

Благодаря Lime я могу легко считывать входные данные с любого устройства, поддерживающих DirectInput или XInput. Я уже делал нечто подобное для Hypnorain, и некоторые игроки сообщили, что игра отлично работает даже с этими штуками, которые я даже никогда не видел в реальной жизни.

Единственная проблема, с которой я столкнулся при работе с геймпадами, заключается в том, что аналоговые джойстики контроллеров со временем ослабевают, и некоторые деградируют быстрее, чем другие. Это приводит к так называемому "дрифтингу", когда игровой контроллер думает, что пользователь нажимает на кнопку или джойстик, даже если пользователь ничего не трогает.

Я исправил это в Hypnorain, добавив ползунок для настройки "мёртвой зоны", и реализовал то же самое в меню опций Yume.

На видео ниже показано, как можно переключать режим управления с клавиатуры на геймпад, регулировать мертвую зону аналоговых джойстиков и двигать игрока с помощью контроллера.

Система меню была уже создана ранее, но до сих пор настройки терялись после закрытия игрового окна. На этой неделе я реализовал сохранение настроек в локальный файл.

В процессе, чтобы облегчить себе задачу, я использовал идентификаторы метаданных — функцию Haxe, которую я никогда раньше не использовал, но которая очень похожа на аннотации в Java. Я пометил некоторые поля в своем классе настроек соответствующими метаданными, чтобы определить, какие поля будут считываться из файла сохранения и записываться в него.

И, наконец, я добавил новую графику и частицы пыли для врагов и движущихся платформ.

Теперь частицы есть у большего количества вещей.
Теперь частицы есть у большего количества вещей.

Следующая задача — добавление новых врагов, реквизита и особенностей игрового процесса.

Вы можете найти все видео по разработке игры в этом плейлисте.

Следующая статья

Speebot: вода

Подписаться

Получайте уведомления о новых статьях, чтобы:

Следить за процессом разработки моей следующей игры.

Читать статьи об искусстве и технологиях создания игр и движков.

Получать новости об изменениях в моих играх.

Подписка бесплатная, просто нажмите на кнопку!