Рубрика «разработка игр» - 70

Вступление

Battle Prime — первый проект нашей студии. Несмотря на то, что многие члены команды имеют приличный опыт в разработке игр, мы, естественно, сталкивались с разными сложностями во время работы над ним. Они возникали как в процессе работы над движком, так и в процессе разработки самой игры.

В геймдев индустрии огромное количество разработчиков, которые охотно делятся своими историями, наработками, архитектурными решениями — в том или ином виде. Этот опыт, выложенный в публичное пространство в виде статей, презентаций и докладов, является отличным источником идей и вдохновения. Например, доклады команды разработки из Overwatch были для нас очень полезны при работе над движком. Как и сама игра, они очень талантливо сделаны, и я советую посмотреть их всем интересующимся. Доступны в GDC vault и на YouTube: www.youtube.com/channel/UC0JB7TSe49lg56u6qH8y_MQ

Это одна из причин, по которой мы также хотим вносить вклад в общее дело — и эта статья одна из первых, посвященная техническим деталям разработки движка Blitz Engine и игры на нем — Battle Prime.

Статья будет поделена на две части:

  • ECS: имплементация Entity-Component-System паттерна внутри Blitz Engine. Этот раздел важен для понимания примеров кода в статье, и сам по себе является отдельной интересной темой.
  • Неткод и геймплей: все, что касается высокоуровневой сетевой части и ее использования внутри игры — клиент-серверная архитектура, клиентские предсказания, репликация. Одной из важнейших вещей в шутере является стрельба, так что ей будет уделено большее количество времени.

Под катом много мегабайт гифок!Читать полностью »

image

Выпущенная для американского рынка в октябре 1992 года Sega CD первые несколько месяцев держалась хорошо, но быстро начала терять коммерческую популярность. В основном это было вызвано слишком большим предрелизным ажиотажем. Потребители быстро осознали, что потрясающие FMV-игры, которые им рекламировали, оказались довольно посредственными. Вводящая в заблуждение реклама, а также множество других факторов в результате привели к коммерческому провалу системы.

Крах консоли привёл к тому, что многие компании перестали рассматривать Sega CD как доходный рынок. Из-за этого разработка множества игр (в основном портов уже выпущенных проектов) прекратилась, а сами они остались на полу монтажного цеха и были забыты.

Одной из самых знаменитых игр для Sega CD, тоже впоследствии отменённой, была "Hammer vs. Evil D. in Soulfire". Эта игра лицензирована рэпером MC Hammer, наиболее известным по 2 Legit 2 Quit, U Can’t Touch This и многих других, менее успешных песен. Кто-нибудь помнит Addams Groove?

Об этой игре было мало что известно. Да, многие сайты публиковали статьи, где упоминали о её существовании, но никто по-настоящему не занимался раскопками истории игры. На протяжении долгих лет максимумом известной публике информации о проекте был 17-секундный ролик, загруженный в YouTube пользователем Jumpstreet Beetz.Читать полностью »

ESPboy гаджет я сделал на основе ESP8266 с TFT цветным экраном 128х128, звуком, RGB светодиодом и аккумулятором с зарядкой.

ESPboy гаджет для ретро игр и экспериментов с IoT - 1

Получилась автономная, модульная платформа, которую можно спаять за пару часов из деталей, стоимостью примерно 12$ и носить в кармане.
Читать полностью »

image

В Unity 2018.3 появилась поддержка изометрических тайловых карт, очень напоминающая поддержку тайловых карт шестиугольников, которая была добавлена в версии 2018.2. Новые функции Tilemap позволяют быстро и эффективно создавать 2D-окружения на основе изометрических и шестиугольных сеток, которые использовались во многих классических играх, в том числе в первых частях Diablo и Fallout, Civilization, Age of Empires, и многих других.

Обе системы построены на основе уже существовавшей системы Tilemap, появившейся в Unity 2017.2, и сегодня работать с ними так же просто! Кроме того, они имеют нативную интеграцию с Editor. В дальнейших версиях Unity они могут быть перенесены в package manager.

Если вам интересно поэкспериментировать с этими системами, мы создали заранее подготовленный проект Isometric Starter Kit с анимированным персонажем и несколькими тайлсетами окружений. Скачать его можно здесь.Читать полностью »

Хотим в общих чертах рассказать про первые достижения с deep learning в анимации персонажей для нашей программы Cascadeur.

Во время работы над Shadow Fight 3 у нас накопилось много боевой анимации — около 1100 движений средней длительностью около 4 секунд. Нам давно казалось, что это может быть хорошим датасетом для обучения какой-нибудь нейронной сети.

Однажды мы заметили, что когда аниматоры делают первые наброски идей на бумаге, то им достаточно нарисовать буквально палочного человечка, чтобы представить себе позу персонажа. Мы подумали, что раз опытный аниматор может хорошо выставить позу по простому рисунку, то вполне возможно, что и нейронная сеть справится. Из этого наблюдения родилась простая идея: давайте из каждой позы мы возьмем только 6 ключевых точек — запястья, щиколотки, таз и основание шеи. Если нейронная сеть знает только позиции этих точек, то сможет ли она предсказать остальную позу — позиции 37 остальных точек персонажа?
Читать полностью »

Атомный квест в Битцевском парке - 1

В связи с повсеместным хайпом по поводу Чернобыля в начале лета (по крайней мере в среде ядерной энергетики), а также гремящих словах цифровизация и геймификация, мы в ИБРАЭ РАН решили создать некоторое подобие квеста-приложения в котором концептуально моделируется эксплуатация энергоблока атомной станции и провести его тестирование в Битцевском парке.
Читать полностью »

Меня периодически мотает по разным странам (если точнее, по разным программам акселерации). Стараюсь делиться опытом, т.к. у нас что-то совсем глухо с этим в стране. А существующие инвест фонды берут стартапы/команды на скотских условиях. Можно почитать про наш опыт в Y Combinator, K-Startup Grand Challenge, Start-Up Chile в старой статье. К сожалению, тот проект пришлось закрыть. Возможно, в постмортеме по UnnyWorld вы для себя найдёте что-то полезное, чтобы не наступить на те же грабли.

Зачем я это всё пишу? Чтобы инди-разработчики поняли, что у них, на самом деле, много возможностей получить помощь извне при разработке своей игры.

К сожалению, по опыту общения я заметил, что очень много наших разработчиков банально боятся подаваться в подобные программы. Часто из-за синдрома самозванца, люди почему-то считают, что они не достойны участвовать в подобных программах. Нет! Достойны! И более того, это не так сложно, как кажется.

В данной статье я попытаюсь поделиться своим опытом нахождения в этой программе.

Опыт участия в программе F2P Campus - 1

Читать полностью »

image

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

Чаще всего для генерации подземелий в играх жанра roguelike на карту добавляются сгенерированные или заранее созданные фрагменты подземелья. Подземелье вырастает из начальной точки подобно дереву. Однако деревья заканчиваются ветвями, что приводит к созданию множества тупиков. Чтобы обойти эту проблему, большинство генераторов подземелий ищут места, в которых можно случайным образом соединить ветви, чтобы игрок мог двигаться по кругу, а не возвращаться постоянно назад.

В dungeon crawler'е Unexplored использован фундаментально иной подход (см. рисунок 1). Вместо линейных путей в качестве самой базовой структуры он изначально использует циклы. Разница оказывается поразительной: при старом подходе хорошие и интересные циклы могли возникать случайно, а в Unexplored они являются запланированной особенностью результата работы генератора.
Читать полностью »

Эта запись девлога целиком посвящена моей системе анимации персонажей, она наполнена полезными советами и фрагментами кода.

За последние два месяца я создал целых 9 новых действий игрока (такие забавные вещи как блокировка щитом, уворачивание в прыжке и оружие), 17 новых носимых предметов, 3 набора брони (пластинчатый, шёлковый и кожаный) и 6 видов причёсок. Также я завершил создавать всю автоматизацию и инструменты, поэтому всё уже используется в игре. В статье я расскажу, как этого добился!

Модульные спрайтовые персонажи и их анимация - 1

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

Краткое описание

Изначально я хотел проверить, можно ли совместить наложенные друг на друга спрайты с синхронизованными аниматорами для создания модульного персонажа с заменяемыми причёсками, снаряжением и носимыми предметами. Можно ли объединить нарисованную вручную пиксельную анимацию с по-настоящему настраиваемым персонажем.

Разумеется, такие функции активно используются в 3D- и 2D-играх с пререндеренными спрайтами или в 2D-играх со скелетной анимацией, но насколько я знаю, существует не так много игр, совмещающих созданную вручную анимацию и модульных персонажей (обычно потому, что процесс оказывается слишком монотонным).
Читать полностью »

Я хотел, чтобы в моей игре The Last Boundary была туманность. Они потрясающе выглядят и космос без них не космос, а просто разбросанные по фону белые пиксели. Но так как игру я делаю в стиле «пиксель-арт», то мне нужно было как-то заставить мою библиотеку шума генерировать пикселизированные изображения.

Вот несколько примеров:

Создание пиксельной туманности при помощи шума и Median Cut - 1

Создание пиксельной туманности при помощи шума и Median Cut - 2

Ещё примеры

Создание пиксельной туманности при помощи шума и Median Cut - 3

Создание пиксельной туманности при помощи шума и Median Cut - 4

Создание пиксельной туманности при помощи шума и Median Cut - 5

Создание пиксельной туманности при помощи шума и Median Cut - 6

В одноцветных примера используется 8 цветов, а в других — 16 цветов. В этой статье я расскажу, как создавал пикселизированную туманность для The Last Boundary.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js