Разработка игры — это практически всегда долго и сложно. Нужно выбрать подходящую среду разработки, платформу для игры, собрать команду и так далее.
В статье рассказываем, что такое дизайн-документ, в каких случаях стоит делать прототип, какой движок выбрать и какие роли есть в команде разработки.
С чего начать разработку игры
Разработать игру — сложно. Особенно сложно сделать это самостоятельно. Слишком много информации, которую в одиночку не осилить. Чтобы начать разработку игры, нужно:
- Придумать идею игры, жанр и сеттинг. Можно следовать трендам и разработать что-то хайповое. Можно сделать клон существующей игры, чтобы набраться опыта. А можно попробовать сразу сделать что-то уникальное.
- Выбрать платформу. ПК и приставки и/или мобилки. Выбор платформы зависит от жанра игры, ваших возможностей и предпочтений.
- Написать дизайн-документ. Там описывают всю игру: геймплейные механики и детали сюжета, параметры баланса, графический стиль и так далее.
- Выбрать движок. Он должен подходить по требованиям для реализации выбранного жанра, графического стиля, а еще поддерживать экспорт на нужную платформу.
- Собрать команду. Лучше разделить ответственность за разные стороны разработки игры между несколькими специалистами — так будет продуктивнее.
Среда разработки
Есть много разных движков и конструкторов игр. Выбрать сложно, но мы посмотрим статистику Steam и попробуем определиться:
Из статистики видно, что три самых популярных движка по выпущенным играм в Steam — это Unity, Unreal Engine и Game Maker: Studio.
Чем популярнее движок, тем больше учебных материалов, видео на ютубе и размер сообщества с единомышленниками. А значит — будет проще научиться самому работать с этим движком или найти в команду людей с нужными навыками работы.
На всех этих движках можно делать игры для ПК, консолей и мобильных платформ.
Unity
Самый популярный движок для разработки игр в любом жанре и на любой платформе. Де-факто — это стандарт для разработки мобильных проектов.
Плюсы:
- Персональная версия движка доступна бесплатно при годовом доходе меньше $200 000.
- Не самый сложный и довольно популярный язык программирования C#.
- Есть система визуального скриптинга Bolts, с помощью которой можно вносить изменения в игру дизайнеру самостоятельно, не задействуя программиста.
- Можно экспортировать игру для браузера.
Минусы:
- Нужно приложить много усилий, чтобы добиться такой же фотореалистичной картинки, как в Unreal Engine.
- Возникает много проблем при переходе на новую версию движка.
Unreal Engine
Основной конкурент Unity среди 3D-движков, известен отличной картинкой и технологиями. Вместе с пятой версией движка Epic Games презентовали технологии Nanite и Lumen — они могут масштабировать и отображать модели из миллионов полигонов. А еще в них есть система динамического глобального освещения, которая делает картинку крайне реалистичной.
Плюсы:
- Движок бесплатный до первого заработанного миллиона в долларах, дальше нужно будет отдавать процент с дохода.
- Современные технологии фотореалистичного рендера — «Матрицу» на Unreal Engine порой тяжело отличить от фильма.
- Fortnite, который разрабатывают авторы Unreal Engine, позволяет заранее обкатывать на большой базе пользователей новые фичи движка.
- Визуальное программирование с помощью Blueprints — вместо того чтобы писать код вручную, можно расставлять мышью специальные блоки и связывать их между собой, создавая логику программы.
Минусы:
- Если не использовать Blueprints, то придется изучать довольно сложный язык C++.
- Не самое оптимальное решение для разработки мобильных игр — нужно приложить много усилий, чтобы оптимизировать рендер и размер игры для мобильных устройств.
- Не такой развитый функционал для создания 2D-игр по сравнению со специализированными движками (Game Maker) или с Unity.
- Нет возможности экспортировать игру для браузера.

Game Maker: Studio
Движок для создания двухмерных игр. Обычно его используют небольшие инди-команды.
Плюсы:
- На этом движке можно быстро прототипировать и разрабатывать 2D-игры.
- Для новичков есть режим визуального программирования без написания кода.
- Можно экспортировать игру для браузера.
Минусы:
- Не подходит для полноценного 3D, хотя в нём есть базовые функции по загрузке трехмерных объектов.
- Нет мультипоточности — если планируете делать сложный 2D-проект, нужно хорошо поработать над оптимизацией: распределять сложные вычисления между несколькими кадрами, оптимизировать алгоритмы, выносить сложные процессы типа поиска пути во внешние dll, написанные на C++, и использовать другие хитрости.
- Бесплатная только базовая версия, из которой можно экспортировать игру только для веба на сервис gx.games. Остальные версии движка с разными ограничениями — по подписке.
Какой язык программирования нужен
После того как выбрали движок для разработки игры, вопрос с выбором языка программирования автоматически закрывается: движок поддерживает только один определенный язык.
А если в движке есть система визуального программирования, как в Unreal Engine или Unity, можно обойтись вообще без написания кода. Как минимум для создания прототипа.
Как выбрать платформу
При выборе платформы стоит ориентироваться на жанр игры: времена, когда на ПК играли в «собери в ряд», давно в прошлом, сейчас для этого есть смартфоны. А для хардкорной RPG больше подойдет консоль или компьютер.
Платформы накладывают и другие ограничения, например по управлению: если его можно свести к минимуму, задействовав только один или два пальца, то игру можно выпускать и на мобильном устройстве.
Но если требуется много кнопок (авиасимуляторы), высокая точность управления (платформеры) или на экран нужно выводить много информации (стратегии) — то смартфон в качестве платформы не подойдет.
ПК и приставки равнозначны по возможным жанрам. За исключением части хардкорных игр, где геймпад приставки не подходит для управления: авиа- и другие симуляторы или стратегии в реальном времени.
ПК
Плюсы:
- Для разработки и тестирования не нужны специальные устройства — достаточно компьютера.
- Большая аудитория хардкорных и мидкорных геймеров.
Много инди-площадок, на которые можно бесплатно выложить свою игру и получить обратную связь.
Минусы:
- Большая конкуренция — за 2021 год в Steam вышло почти 12 тысяч игр, 27% из них продались тиражом меньше ста копий.
- Нужно быть готовыми, что ваша игра окажется на торрентах в день релиза.
- Всегда есть вероятность, что найдется игрок с такой конфигурацией ПК, на которой ваша игра будет работать некорректно.
Приставки
Плюсы:
- На консоли гораздо сложнее создать игру, поэтому здесь меньше конкуренция.
- Оптимизировать и поддерживать игру проще на консоли. потому что есть всего несколько конфигураций устройств, на которых будет запускаться игра.
- Большая аудитория хардкорных и мидкорных геймеров.
- Маленький процент пиратства.
Минусы:
- Для инди-разработчика сложно самостоятельно договориться и оформить соглашение с консольными платформодержателями, поэтому ему понадобится издатель с выходом на консольный рынок.
- Для тестирования игры во время разработки нужен девкит — специальная версия консоли для разработчиков. Такие устройства в магазине не найти, их могут прислать только соответствующие платформодержатели после заключения договора.
- Управление в игре должно быть заточено под геймпад. Если вы делаете игру на ПК и на консоли, придется поддерживать два разных способа управления — «клавамышь» или геймпад.
- Не все жанры приживаются на консолях — сомнительное удовольствие играть с геймпада в стратегию в реальном времени.
Мобилки
Плюсы:
- Можно очень быстро сделать прототип игры: в мобильных играх обычно мало механик.
- Гиперказуальные игры прототипируются от пары часов до пары дней.
- Требования к графике сильно ниже, чем на ПК или на консолях.
Минусы:
- Огромная конкуренция — в 2021 году в Google Play было выпущено 187 тысяч игр: это 520 игр в день.
- Нужно вложить много денег в рекламу — без нее вашей игры фактически не существует.
Добро пожаловать в мир аналитики — CPI, DAU, MAU, Retention, ARPU и еще много других непонятных слов, в которых придется разобраться и которые напрямую влияют на успех мобильной игры. - Даже если игра не предполагает обновлений после релиза, этим всё равно нужно будет заниматься: в Google Play или AppStore периодически меняются правила по защите персональных данных — и вместе с этим устаревают SDK, с помощью которых показывается реклама или собирается аналитика. Если SDK периодически не обновлять, то игру просто удалят.
Браузеры
Плюсы:
- Проще всего начать играть — не нужно ничего устанавливать, браузер есть и в телефоне, и на ПК.
Минусы:
- Далеко не все движки позволяют экспортировать игру в браузер — например, в Unreal Engine такой возможности нет.
- Управление в игре нужно адаптировать под сенсорное управление, если вы хотите, чтобы играть можно было с телефона.
- Браузер — не самая эффективная платформа для сложных 3D-игр, поэтому игру придется сильно оптимизировать и урезать графику.
Основные компоненты игры
Геймплей и игровые механики
Геймплей — это взаимодействие игрока с игровыми механиками: стрельба из оружия, инвентарь, замедление времени, стелс, регенерация здоровья и так далее.
Игровых механик может быть немного. Например, в гиперказуальных играх может быть одна игровая механика: в Flappy Bird нужно управлять птичкой тапами и избегать препятствий. Врезался — проиграл. Вот и вся игра.
Сюжет и персонажи
Интересный сюжет не может испортить игру. А харизматичный герой добавит эпичности игре даже с очень условным сюжетом — мало кто вспомнит подробности истории из первого Doom (1993), но Думгая вспомнят точно.
Графический дизайн
Стилизацию и гейм-дизайн игры определяет графический дизайн. В шутере может быть фотореалистичная графика, а в головоломке — простые и минималистичные формы. И наоборот. Дизайн должен соответствовать задумке игры.
Звук
Некоторые берут звуки со стоков, а есть саунд-дизайнеры, которые ломают лук-порей и записывают звук перелома костей, а с помощью дверного замка — звуки оружия. Но не так важно, откуда берут звуки, — главное, чтобы они создавали нужную атмосферу в игре.
Баланс
Необязательно искать идеальный баланс — главное, чтобы игрок ощущал челлендж и верил, что только благодаря отточенным навыкам ему удалось пройти этот сложный уровень. Но на самом деле игра ему поддалась в нужный момент.
Для этого нужно выдерживать так называемую кривую сложности — сложность должна со временем расти, но время от времени нужно подкидывать игроку более простых противников, чтобы он ощущал свой прогресс.
Этапы создания
Концептирование
Сначала нужно придумать идею игры, а потом выбрать жанр и сеттинг, которые смогут в полной мере раскрыть эту идею.
Затем нужно перенести придуманную игру из головы в дизайн-документ. В нём описать все механики, геймплей, сюжет и другие составляющие игры. Это по сути инструкция к разработке игры для самих разработчиков. Задумав новую фичу, дизайнер сперва описывает ее в дизайн-документе — и уже после этого исполнители могут обращаться к этому документу и реализовывать фичи.
На этом этапе можно жонглировать идеями и изменять концепт хоть каждый день: временные расходы на это минимальны.
Прототипирование
Идея игры есть, дизайн-документ готов — можно приступать к разработке. Но если вы придумали нечто экспериментальное и поэтому не уверены в сочетаемости выбранных механик, сначала можно сделать прототип игры.
Прототип — это упрощенная версия игры. В ней нет детализированной графики, музыки и звуков — если игра не основана на музыке. Все ассеты максимально примитивны или взяты со сторов. Главная задача прототипа — протестировать игровые механики в сжатые сроки и убедиться, что они работают как надо.
На этом этапе еще можно изменять дизайн-документ без особых трудностей: прототип можно быстро переделать.
Производство
Подготовительные этапы позади, теперь самое сложное — сделать игру. Чем разработка ближе к завершению, тем тяжелее будет вносить изменения в изначальный концепт — и тем дороже они будут. На этом этапе стоит проводить плейтесты среди знакомых и друзей: взгляд со стороны крайне важен, особенно из-за постепенного замыливания глаза у разработчиков.
В процессе разработки стоит начать заниматься раскруткой игры: публиковать на Reddit гифки с интересными моментами из геймплея, участвовать в «Скриншотных субботниках», фестивалях демоверсий в Steam. Таким образом к релизу уже можно собрать сообщество и получить какое-то количество вишлистов.
Тестирование
Первый барьер между игрой и багами — это программист. Он создает баги, и он их чинит. Таким образом отлавливаются самые элементарные ошибки. Но с ростом сложности проекта растет количество возможных факторов, которые приводят к ошибкам, поэтому только на программистов положиться уже нельзя.
Есть несколько путей, по которым можно пойти:
- Обратиться в специальные компании, которые тестируют на аутсорсе. Там всё серьезно: видеоотчеты с веб-камерой, направленной на тестера, подробная обратная связь и инструкции по воспроизведению ошибок. Но это дорого.
- Найти несколько тестировщиков-любителей. Выбирать лучше тщательно, чтобы ваш продукт протестировали не совсем новички.
- Использовать комьюнити: там есть самые заинтересованные в игре люди, от которых можно ожидать полной отдачи и внимания к деталям, хотя баг-репорты вряд ли будут профессиональными. Но это бесплатно.
Релиз
Нельзя просто так взять и зарелизить игру без рекламной кампании — или результат будет посредственным. Анонс стоит проводить минимум за полгода-год до релиза: за это время нужно собрать вокруг игры комьюнити и достаточное количество вишлистов в Steam.
В среднем каждый второй вишлист превращается в покупку игры. К тому же когда Steam видит высокую динамику продаж на релизе, он дополнительно начинает рекомендовать игру и повышает продажи.
Техподдержка
Неважно, сколько было тестировщиков, — на релизе игроки найдут новые ошибки. Но цена этих ошибок выше: плохие отзывы о забагованности игры могут серьезно испортить старт продаж. Поэтому после релиза всегда наступает долгий период поиска и устранения ошибок и общения с сообществом.
Дальше стоит задуматься над разработкой и выпуском дополнений к игре — как платных, так и бесплатных. Каждое такое обновление создает инфоповод и увеличивает количество потенциальных игроков.
Команда
Часто в инди-разработке один человек занимается сразу несколькими вещами одновременно, например дизайном, тестированием и маркетингом, а другой программирует и рисует. Но чем крупнее команда, тем более специализированные роли отводятся ее участникам.
Гейм-дизайнер
Придумывает игровые механики, настраивает баланс, несет сквозь разработку итоговое видение игры. Пишет и поддерживает актуальность дизайн-документа, которым пользуются все члены команды.
Программист
Проектирует архитектуру игры, программирует механики. Совершает ошибки в коде — поэтому у тестировщиков всегда есть работа.
Тестировщик
Проверяет все возможные и невозможные сценарии в игре, пытается врезаться в каждую стену на уровне, продать торговцу отрицательное количество предметов, радуется, когда удалось сломать игру.
Художник
Рисует спрайты, фоны, иконки, создает 3D-модели, текстурирует, настраивает анимации. Арт-директор следит за общем стилем игры и сочетанием разных элементов.
Маркетолог
Если речь о мобильной игре — то человек, который умеет настраивать монетизацию и закупать трафик, будет чуть ли не важнее геймдизайнера.
Коротко о главном
- Обязательно составьте дизайн-документ.
- Если не уверены в игровых механиках, которые выбрали, сделайте прототип и протестируйте его на ком-нибудь.
- Начинайте раскрутку игры уже во время разработки: на релизе заниматься этим будет уже поздно.
- При выборе движка исходите из требований к жанру, стилистике и платформе.
- Можно попробовать всё сделать самому, но лучше собрать команду и заняться тем, что действительно нравится в разработке игры.
Добавить комментарий