Как сделать свою первую игру. 7 главных советов
Геймдизайну может научиться каждый. Главное — не бояться собственных ошибок.
Если вы читаете эти строки, вас, скорее всего, посещала идея сделать собственную игру. Может быть, вы даже пытались взяться за это — но, впервые увидев интерфейс игрового движка, сказали себе: «Нет». А потом закрыли движок и больше никогда к нему не прикасались.
На самом деле всё не так страшно, как кажется. Советуем, как перестать беспокоиться и полюбить делать игры.
Совет №1. Не стремитесь к идеалу
Не повторяйте ошибку тех, кто пытается сразу сделать игру своей мечты.
Многие берутся за разработку в надежде воплотить в жизнь свои блестящие идеи. Иногда у новичков выходит The Stanley Parable — но куда чаще их задумки гибнут ещё на первых этапах разработки, погребённые под грузом амбиций.
Не потому что у вас нет таланта — просто для этого нужны опыт, знания и, если речь идёт о хоть сколько-нибудь большой игре, команда профессионалов. Вашей целью поначалу должен быть не хороший продукт, а что-то, что вы сможете быстро собрать и так же быстро начать тестировать.
Иными словами, смотрите на свои первые проекты как на обучающие упражнения. Ведь это они и есть.
Совет №2. Выберите подходящие инструменты
Найдите движок, который поможет вам освоить азы разработки. На этом этапе удобство и простота в освоении куда важнее, чем мощность технологии и список опций, — хотя они тоже важны.
При помощи разработчиков-специалистов мы разобрались в плюсах, минусах и особенностях трёх игровых движков, которые подойдут новичкам, — GameMaker Studio 2, Unity и Unreal Engine.
GameMaker Studio
Лозунг компании-создателя движка YoYo Games — «Делать игры может каждый». Дебютировавший в 2007 году GameMaker известен прежде всего своей доступностью. Например, он не требует знания кода: в редактор встроен визуальный редактор скриптов, который позволяет сразу начать делать игру.
Тем не менее его возможностей хватает, чтобы сделать качественный проект: доказательством служат такие игры, как Spelunky, Hotline Miami и Hyper Light Drifter.
Инди-разработчик и старший геймдизайнер Кирилл Золовкин (Allods Team) рекомендует движок независимым разработчикам: «Для небольшой инди-студии или одиночки, создающего 2D-игры, трудно найти более простой и понятный редактор».
Разработчик перечисляет опции и сильные стороны движка, которые пригодятся новичкам:
- Простой для понимания скриптовый язык GML.
- Подробная актуальная документация и огромная база примеров.
- Дружелюбное, активное сообщество.
- Инструмент для создания кат-сцен Sequences.
- Внешний редактор частиц Geon FX, в котором легко создавать разные эффекты (например, взрывы или звездопад).
- Экспорт игры на консоли — например, на Nintendo Switch.
- Хорошая обратная совместимость: в новую версию движка можно перенести даже проект 20-летней давности.
Однако главное достоинство GameMaker, его простота, также порождает его главные недостатки:
- Ограничения в возможностях: например, в движке до сих пор отсутствуют полноценные инструменты для создания 3D-игр.
- Трудности в работе с внешними библиотеками — программными модулями, нужными для реализации разных функций; нет интеграции популярных библиотек — например, платформы Playfab, которая используется для отслеживания статистики игроков.
- Отсутствует кроссплатформенное проигрывание видео.
Кроме того, бесплатно GameMaker доступен только в первый месяц — после этого придётся купить одну из версий ценой от 39 до 799 долларов.
Unreal Engine
Движок был впервые использован в 1998 году для создания шутера от первого лица Unreal, но с тех пор успел завоевать репутацию одного из самых мощных и универсальных редакторов в игровой индустрии. На его основе созданы самые разные проекты: от серии NBA и батл-рояля Fortnite до ролевой игры The Outer Worlds и будущей S.T.A.L.K.E.R. 2.
Инди-разработчики тоже любят использовать движок Epic Games. Валентин Щекин (Primary Games) сделал на нём свою первую игру, инди-хоррор Never Again. Он объяснил, почему выбрал именно Unreal Engine: «Меня впечатлили возможности движка. Я сразу в перспективе увидел то, что мне по силам реализовать».
На этом же движке геймдизайнер и художница Юля Кожемяко (Supr Games) делает игры-инсталляции, которые она называет playful experiences. Она выделяет интуитивный интерфейс программы: «Многие вещи [в ней] можно понять методом тыка, просто изучая редактор».
Разработчица также отмечает простор для экспериментов, который даёт Unreal Engine. Для этого в движке присутствует множество опций:
- Гибкие встроенные редакторы с большим числом базовых ассетов.
- Визуальный язык программирования Blueprints, основанный на C++. Валентин называет его инструментом для дизайнера, который не хочет заниматься программированием.
- Полная или частичная автоматизация многих процессов.
- Условно-бесплатная модель распространения. Скачивание Unreal Engine бесплатно: вместо этого Epic Games получает роялти с продаж ваших игр, причем первый миллион долларов процентами не облагается.
В то же время у движка тоже есть свои ограничения:
- Unreal Engine не очень хорошо подходит для работы с 2D-графикой.
- Язык программирования C++ считается одним из самых сложных для изучения.
- Плохая обратная совместимость: часто в свежих версиях программы добавляется много нового и ломается много старого.
- Так как движок кроссплатформенный, его приходится часто обновлять.
- Высокие требования к «железу» компьютера.
Unity
Ещё один популярный движок, любимый инди-сообществом — во многом за баланс между возможностями и дружелюбностью по отношению к новичкам. Unity одинаково хорошо подходит для разработки 2D- и 3D-игр, и с момента дебюта в 2006 году в редакторе были созданы самые разные проекты — от «симулятора ходьбы» Gone Home и мобильной AR-игры Pokemon Go до изометрической RPG Pillars of Eternity и шутера-головоломки SUPERHOT.
Ведущий программист Pixonic Алексей Малороссиянов перечисляет качества, благодаря которым Unity обрёл популярность:
- Относительно низкий порог входа. «Вы можете быстро начать разрабатывать игру и не задумываться о сложных частях, если не упрётесь в них, чего может и не случиться», — объясняет Алексей.
- Поддержка большого числа платформ — от телефонов до консолей.
- Большое сообщество и множество туториалов — как от Unity-Corp, так и от разработчиков разного уровня.
Из достоинств движка также стоит отметить Unity Asset Store, в котором в несколько раз больше ассетов, чем в маркетплейсах других движков.
В то же время в Unity есть свои недостатки, которые могут усложнить разработку:
- В движке сложно реализовать комплексные идеи. Оптимизация, работа с загружаемым контентом и поддержкой зрелищных сцен может стать нетривиальной задачей, которая требует досконального знания редактора, его багов и обходных путей.
- Проблемы при смене одной версии на другую: часто это приводит к непредсказуемым сбоям в работе модулей Unity.
В конечном счёте, как отмечает Алексей, всё зависит от того, чего вы хотите от своего проекта.
Если ваша задача — собрать прототип несложной механики, или в вашей команде есть только художники и геймдизайнеры, вам подойдёт GameMaker Studio. Если вы хотите создать кинематографический опыт со сложной визуальной частью, вам стоит выбрать Unreal. Если же вы хотите создать достаточно сложный проект со множеством механик, мобильную игру или если вы нацелены на множество платформ, стоит использовать Unity.
Совет №3. Соберите прототип и покажите его друзьям
«Не откладывайте на потом практическую часть», — рекомендует Кирилл Золовкин. Как только вы немного разобрались в движке, пришло время делать прототип — модель будущей игры, предназначенную для тестирования игровых механик.
Опирайтесь на те навыки, которые вы получили при знакомстве с движком, — так вы не загоните себя в тупик. Соберите что-нибудь небольшое — один уровень платформера или трассу в гоночной игре. Главное, чтобы в это можно было играть.
Такое самоограничение поможет за неделю-две собрать прототип, который затем следует показать друзьям.
И надо быть готовым, что его не оценят по достоинству: в конце концов, вашему творению далеко от высокобюджетных игр, к которым они привыкли. Любая реакция ценна сама по себе: во-первых, друзья дадут вам фидбэк, который поможет избежать ошибок в будущем, во-вторых, это избавит вас от ощущения, что вы делаете игры «в стол».
Совет №4. Следуйте принципу «Каждому по способностям»
Успели помучить друзей своими прототипами? Уже получается собрать целый уровень, не запутавшись в движке? Пора сделать полноценную игру. И здесь важно вновь не потонуть в море собственных амбиций.
В геймдеве (и не только) существует такое понятие, как минимально жизнеспособный продукт — то есть набор механик, которого достаточно для запуска. В случае шутера, например, это перестрелки. Все прочие механики — стелс, кат-сцены, разрушаемость — можно добавить позже.
Не пытайтесь сделать всё и сразу. Minecraft тоже когда-то была всего лишь виртуальным конструктором — и посмотрите, во что она выросла.
Геймдизайнер и ведущий канала Extra Credits Джеймс Портнов рекомендует опираться на то, что вы умеете делать лучше всего. Хорошо рисуете? Создайте игру с оригинальным стилем. Не умеете рисовать, зато умеете кодить? Сделайте проект с упором на механики.
Совет №5. Участвуйте в игровых джемах
Игровые джемы (англ. game jam) — это мероприятия, целью которых становится разработка новых игр в ограниченный срок. Как правило, на создание прототипа участникам даётся двое суток, а тема и условия обычно объявляются перед началом джема.
Юля Кожемяко объясняет, почему так важны эти события: «На джеме есть ограниченный срок, [поэтому] ты не будешь несколько месяцев сидеть без результата, а получишь его через два-три дня… Ты увидишь, что можешь сделать, пусть даже в команде с другими ребятами. На джеме нет возможности прокрастинировать. Нужно полностью сосредоточиться на игре».
Здесь действует тот же принцип, что и с показом игры друзьям. Джемы позволяют не работать «в стол», а показать своё творчество другим участникам и, возможно, профессионалам из индустрии. Там же можно завести знакомства с будущими коллабораторами. В частности, с Ильёй Кононенко, соавтором игры The Tender Cut, вдохновлённой «Андалузским псом», Юля Кожемяко впервые встретилась именно на джеме.
Наконец, из удачного прототипа, собранного во время упражнений, вполне может вырасти полноценная игра. Так, например, на свет появились SUPERHOT, Mini Metro и Hollow Knight.
Совет №6. Составьте график разработки
Закончить игру — слишком масштабная задача. Разделите её на основные этапы — собрать уровень, написать диалоги, — а затем разбейте эти этапы на мелкие задачи, которые вам по силам выполнить за неделю.
Да, дедлайны нужны даже свободным художникам. Расписание даст вам возможность отслеживать свой прогресс и чувствовать, что вы не стоите на месте.
В посте, посвящённом разработке Never Again, Валентин Щекин даёт совет по составлению графика: «…Есть негласное правило разработчика: время, заложенное на разработку, нужно умножать на два. Не верьте! Нужно умножать на четыре».
Если вы отстаёте от графика на месяц, возможно, вам следует скорректировать расписание, чтобы дать себе больше времени. Но если застой длится уже два месяца, скорее всего, вы всё-таки переоценили свои силы. В этом случае лучше урезать масштаб проекта — выбросить необязательные уровни и механики — или просто начать другую игру поменьше.
Совет №7. Работайте регулярно
Старая пословица гласит: «Быстро — это медленно, но без перерывов». То же правило действует в геймдизайне.
Избегайте больших пауз в работе. Старайтесь выкроить хотя бы час в день на разработку игры. Постепенно это превратится в привычку — и у вас не будет чувства, что вы топчетесь на месте.
Алексей Малороссиянов объясняет: «Изучать программирование непросто и требует определённого майндсета. Но когда начинает получаться, вы испытываете огромное удовольствие от результата… Не сдавайтесь и планомерно каждый день хотя бы немного времени уделяйте разработке и изучению движка. И всё у вас обязательно получится».
С ним соглашается Юля Кожемяко: «Возможно, пару месяцев не будет видно никакого прогресса, [не будет ощущения], что вы идёте к разработке игр, но спустя какое-то время это произойдёт. Просто надо методично работать».