Хочу в геймдев! Основы игровой разработки для начинающих - Вячеслав Николаевич Уточкин
Шрифт:
Интервал:
Закладка:
СПЕЦИАЛИЗИРОВАННЫХ ДВИЖКОВ тоже довольно много. Они реализуют какой-то конкретный нестандартный запрос лучше, чем универсальные движки. Обычно такой движок умеет только что-то одно, зато очень хорошо, в то время как многопрофильные движки умеют почти все, но на среднем уровне. К примеру, Buildbox прекрасно справляется с задачей создания игр на простых механиках без навыков программирования.
Существуют также ДВИЖКИ ДЛЯ НАЧИНАЮЩИХ РАЗРАБОТЧИКОВ, такие как GameMaker: Studio, Stencyl и др. В отличие от Unity, все-таки требующего каких-то знаний о С#, они вообще не предполагают наличия навыков программирования. Это конструктор, где вы можете собрать игру из готовых частей. Создать новую механику на базе такого движка почти невозможно. Но если разработчики хотят сделать игру дешевле и проще, то это отличный вариант: например, To the Moon была сделана на базе движка RPG Maker. Если у вас стилизованная графика и нет сложного геймплея, то такие готовые движки – хорошее решение. Еще очень удобно использовать их для создания прототипов или игр, которые делаются в рамках гейм-джемов[48].
Также нужно упомянуть о ПРОПРИЕТАРНЫХ (ЗАКРЫТЫХ) ДВИЖКАХ, доступ к которым любому желающему не предусматривается, – например, Frostbite, на котором разрабатывается Battlefield и другие. Они могут быть любой категории: специализирующиеся на одной определенной задаче, общие и т. д. Как правило, такие движки принадлежат какой-то компании, и воспользоваться ими разработчик может только по особым каналам, заключив соответствующее соглашение на использование.
Итак, чтобы сделать выбор, прежде всего нужно отсечь движки, которые не подходят выбранной игровой платформе. Если вы делаете типовой проект, скорее всего, лучшим решением станет выбор универсального движка, Unity или Unreal. Если вам нужны оригинальные решения или игра специфического жанра, посмотрите более специализированные варианты: например, создавать визуальную новеллу лучше на базе специально разработанных для этого жанра движков. Если в вашей команде нет опытного программиста, стоит обратить внимание на движки для начинающих. Если для проекта нужно много программирования, а ваш программист уверенно владеет только C#, имеет смысл выбрать соответствующий движок.
Далее следует определиться с требованиями к качеству графики. Даже инди-команды, используя, например, Unreal, могут рассчитывать на качественную и красивую картинку при наличии хороших моделей. Помните, что пропасть между «отличной» и «просто хорошей» графикой за последние годы сильно сократилась.
Использовать опыт предшественников – тоже хорошая идея. Если у вашей игры есть референсы, логично посмотреть, на каком движке они были созданы, и проанализировать, почему было принято то или иное решение.
Игровые прототипы
Прототипы – это неконечные игровые продукты, создаваемые для того, чтобы проверить свои идеи и ответить на вопросы. Например:
• работают ли наши гипотезы и основные фичи;
• работают ли они так, как мы запланировали;
• играют ли люди в нашу игру так, как мы запланировали;
• может ли понравиться игра нашей аудитории;
• какие части нашей игры вызовут у нас наибольшие сложности.
Создание прототипов позволяет как можно скорее выявить слабые стороны проекта и устранить их. Прототип, созданный с целью ответить на конкретный вопрос или вызов, – самый полезный. «Интересно ли будет играть в мою игру?» – пример плохого вопроса. Лучше: «Как долго сохраняется интерес к основному геймплею?» или «Сколько анимированных объектов в одной сцене в максимальном качестве поддерживает наш движок?» Версия для среза первого впечатления от игры не сможет ответить на вопрос, не будет ли скучно играть пятнадцатую сессию, поэтому следует четко обозначить цель исследования.
ВИДЫ ИГРОВЫХ ПРОТОТИПОВ
ГЕЙМПЛЕЙНЫМИ ПРОТОТИПАМИ называют версию продукта, в которую так или иначе можно поиграть и проверить игровые механики. Например, как работает боевая система или сколько нужно времени, чтобы пробежать конкретный уровень платформера.
Проверяется либо комбинация более или менее стандартных идей, либо жизнеспособность и последствия инновационных решений. Цель здесь – выявить проблемы, над которыми мы по тем или иным причинам не задумывались.
Ответы нужно получить максимально быстро. Если прототип отвечает на поставленные вопросы, абсолютно неважно, в каком качестве он сделан.
Бывают чисто ФУНКЦИОНАЛЬНЫЕ ИЛИ МЕХАНИЧЕСКИЕ ПРОТОТИПЫ, созданные, чтобы проверить гипотезы без каких-либо программ. Это могут быть, например, бумажные прототипы: настольная игра или просто нарезанные листочки бумаги. Таким способом отлично тестируются всевозможные разновидности стратегий и карточных игр.
Если ваша игра про принятие решений и игровую механику, бумажные прототипы – это то, с чего следует начинать. Это экономит кучу времени и сил, ведь выкинуть бумажку и написать новую – намного проще, чем править код.
Рис. 14. Прототипы могут быть даже бумажными!
Этот способ будет вполне эффективным даже для создания прототипов шутеров от первого лица. Если на каждое действие вы выделите своим игрокам определенное количество секунд (с помощью секундомера, например), то сможете пошагово изучить механики даже для игры в реальном времени: сколько шагов или выстрелов в секунду может сделать игрок, какого размера карта нужна для каждого уровня, какой вид оружия эффективен против монстров с разными характеристиками, сколько патронов и здоровья необходимо и так далее.
Если играется хорошо, стоит попробовать собрать прототип в простой игровой системе. С помощью готового игрового движка, разработка на котором будет наименее затратной, проверяем, насколько интересны придуманные нами игровые механики, полностью пренебрегая графикой. На этом этапе стараемся использовать максимум готовых решений: программы и низкоуровневые движки, которые позволяют быстро скомпоновать из ассетов базовый геймплей. Если игра планируется на Unreal Engine 4, прототип для нее все равно вполне можно собирать с помощью Game Maker и аналогичных программ, главное – быстро, просто и дешево; лучше использовать знакомые инструменты, чтобы не тратить время на изучение новых.
Для создания прототипов можно использовать и чисто графические методы (Flash, Figma и пр.), тогда эта работа ложится на плечи художника-дизайнера. Этот метод подходит для игр, где важно проверить, например, как решения игрока влияют на геймплей (в какую сторону он отправился, какой вариант в ветке диалогов выбрал и прочее).
Ради упрощения создания прототипов допустимо срезать целые пласты геймплея. Для комплексных, сложных игр лучше вообще тестировать отдельный функционал и игровые механики.
Когда вы проверяете какие-то инновационные идеи, которые нельзя найти в Unity или Unreal Engine, задача усложняется. Есть несколько вариантов решения этой проблемы.
Если мы хотим протестировать какую-то комплексную