О фиксированной частоте обновления физики
Кто-то мог заметить неприятный баг в предыдущей игре, когда персонаж внезапно проваливается сквозь платформу и бесконечно падает в бездну. Проблема кроется в дискретности обновления игры.
Кто-то мог заметить неприятный баг в предыдущей игре, когда персонаж внезапно проваливается сквозь платформу и бесконечно падает в бездну. Проблема кроется в дискретности обновления игры.
Во время людума я хотел чтобы призраки умели самостоятельно добираться до врагов даже если те находятся не в прямой доступности, а где-то на платформах. Быстро это сделать не получилось, поэтому я добавил кнопку призыва приведений к игроку.
На днях закончился подсчет голосов на людуме и опубликовали результаты. Всего в категории Jam (команда в несколько человек, три дня на разработку и отсутствие серьезных ограничений) было отправлено 1679 игр.
После людума передо мной встал выбор, вернуться к доработке движка и погрязнуть в переписывании физики на пару месяцев или еще немного позаниматься игрой и развить механики. Я выбрал второй вариант. В конце концов я пишу движок чтобы делать игры.
Прошла неделя с момента как мы закончили игру. Как оказалось дедлайн по публикации это только половина дела. Дальше идет оценка игр и определение топа по различным категориям (графика, звук, инновационнсть, фан и тд). Процесс занимает чуть больше двух недель.
Закончили. За два дня мы провели за ноутами по меньшей мере часов 20 с перерывами на покушать и погулять пса. Я писал код и собирал уровень в редакторе, а Таня нарисовала практически весь арт, кроме персонажей. Их рисовал я.
Собрались с женой писать игру на людум. Тема в этот раз: Summoning. Брейнштормили идеи пока гуляли с собакой, надумали игру про молодого некроманта.
Немного подготовился к предстоящему людуму: создал репозиторий, настроил окружение и собрал hello world игры, где один квадрат падает на другой. Сразу воткнул React чтобы сделать экран меню и нарисовать интерфейс.
При работе с редактором бывают ситуации, когда он реагирует на изменение в коде проекта и рисует уведомление с просьбой его перезагрузить. Как оказалось на практике это происходит слишком часто и алерт надоедает.
Какую бы книгу или статью по проектированию игровых движков я не брал, всегда есть упоминание того, что события можно обрабатывать синхронно или же откладывать выполнение формируя некую очередь. Каждый подход имеет право на существование, у каждого есть свои плюсы и минусы.