Играть в компьютерные игры и создавать их - это разные вещи. Большинство геймеров, которые являются самыми строгими судьями игрового продукта, даже не представляют себе, сколько творчества и труда нужно вложить в каждый проект. Создание игры – процесс трудоёмкий, который состоит из нескольких этапов, и именно поэтому нужна целая команда разработчиков, в которой каждый человек будет специалистом в своей области знаний.
Давайте посмотрим, как создается компьютерная игра, и так ли это просто на самом деле.
Плясать нужно с цели
Цель – это то, с чего начинается каждая задумка. Концепцией продукта и определением цели занимается руководитель проекта. Разработчик сразу должен определиться, что он хочет в итоге получить. Для того, чтобы удачно «выстрелить», уже нельзя "палить" наугад.
Жанр
Разделение компьютерных игр на жанры очень специфично и не похоже на жанровое разделение книг и фильмов. В выборе жанра для игры не обязательна излишняя точность, но, как минимум, нужно задать верное направление для развития проекта и сделать это нужно обязательно в самом начале. Часто происходит так, что разработчики корректируют выбранный ими жанр по ходу работы – добавляют какие-то фишки. Но полностью менять жанр игры уже в процессе работы нежелательно – проще начать разработку нового проекта, чем переделывать готовые наработки.
Сеттинг
Сеттинг – это принадлежность игры к какой-то сюжетной теме или к определенному виртуальному миру. И если жанр отвечает только на вопрос «Что?», определяя основные действия, которые геймеры будут совершать в процессе игры, то сеттинг уже отвечает на вопросы «Где?» и «Когда?». Создание игры в популярном сеттинге изначально обеспечивает успех проекту, к тому же игроки чувствуют себя комфортно в уже знакомом мире. Некоторые игры создаются в необычных сочетаниях стандартных тем или в уникальных сеттингах. Такие проекты не будут популярны у широкой аудитории, но найдут признание среди игроков, которые презирают шаблонность.
В среде компьютерных игр сформировалось несколько наиболее популярных сеттингов: аниме, комиксы, вторая мировая война, стимпанк, средневековье, постъядерный мир, а также фэнтези и научная фантастика (sci-fi).
Все средства хороши
Когда цель проекта задана, необходимо выбрать инструменты и материалы для ее достижения. И здесь всё упирается только в одно – в программный код. Код является как бы строительным материалом – это и трехмерные модели, и цифровые изображения, и звуки, и тексты в виде последовательностей нулей и единиц. Также код является и инструментом – команды в строчках программного кода управляют игровыми объектами всех типов, перечисленных выше.
Сам программный код является, по сути, каркасом, на который нанизываются результаты всех последующих этапов разработки. Эту работу совсем нельзя назвать творческой - ей занимаются программисты. Устроено здесь всё замысловато.
Сначала нужно выбрать язык программирования, который подходит лучше всего. После этого предстоит сложнейшая работа по написанию программного кода, способного оперировать двухмерными или трехмерными объектами в пространстве, привязкой звуков и изображений. По ходу разработки программистам расслабиться также не удастся, ведь нужно изучить все форматы аудиофайлов и изображений, а также различные кодировки и кодеки.
Игровой движок
Современным разработчикам очень повезло, так как сегодня уже не приходится возиться с написанием низкоуровневой программной части, а можно сразу воспользоваться готовым игровым движком (или программным модулем), где уже реализованы базовые функции, объединяющие графику, объекты и их движения, а также звук.
Получается так, что главной «проблемой» сегодня является выбор готового игрового движка. Но применение уже изобретенного «велосипеда» не освобождает разработчиков от использования услуг программистов, ведь стандартный движок еще нужно подстроить под свой проект, добавить в него что-то новое, чтобы игра получилась уникальной.
Механика – это всё
Пожалуй, самой важной частью любой игры является механика. Именно она находится не на самой поверхности, и поэтому часто ускользает от взгляда невнимательных ценителей компьютерных игр.
Если почитать комментарии и рецензии к играм, написанные подростками, то можно заметить, что они оценивают игру, в основном, по графике, и не замечают, что красивая картинка без хорошо проработанной механики быстро теряет популярность. Настоящие ценители хороших игр всегда будут верны захватывающему геймплею, нежели потрясающей картинке. Посмотрите на MineCraft – эта игра явно не отличается замысловатой графикой, но дарит игроку безграничные возможности.
По сути, игровая механика является неким кодексом проекта, где прописаны основные правила по функционированию игры. Только механика решит, сможет ли игрок двигать предметы или, управляя героем, сесть в машину и поехать на ней. Основой основ всей механики являются игровые объекты: главный герой, соперники, бонусы, второстепенные персонажи, декорации, подвижные объекты. И все они обладают определенными свойствами и возможными действиями.
Еще всемогущая игровая механика определяет, какими клавишами будет управляться главный герой и какое действие будет происходить после нажатия той или иной кнопки.
Физический движок
Если доступным языком объяснить, как действует физический движок, то можно просто представить, как разбивается хрупкий предмет, брошенный с высоты, как отскакивает мячик от пола, и как катится с наклонной поверхности отлетевшее колесо. А если сосем коротко, то физический движок отвечает за те движения, которые происходят без прямого вмешательства игрока. По сути, эти действия имитируют физические законы реального мира, которые, порой, немного искажены в сторону фантастики.
Для того, чтобы сегодня придумать физический движок, понадобится очень талантливый программист, хорошо понимающий принципы объектно-ориентированного программирования (ООП) и немного разбирающийся в классической физике. На сегодняшний день разработчикам ломать голову не приходится, ведь чаще всего в игровых движках уже реализованы и физические движки. Нужно только добавить своим уникальным объектам готовые физические характеристики в виде разрушаемости, веса и эластичности.
Немного интеллекта не помешает
Искусственный интеллект напрямую зависит от жанра игры. К примеру, серьезная стратегическая игра требует кропотливой работы над ИИ, но в тоже время в экшенах действия врагов крайне примитивны. Кажущаяся разумность соперника в RTS-стратегиях создается парочкой десятков скриптов, а в файтингах, стелс-экшенах и слешерах необходима уникальная система поведения для каждого типа врагов – в противном случае «недалекие» противники сделают игру неинтересной.
Всё должно быть на уровне
На этой стадии разработки пора браться за локации (или уровни). Чаще всего игры содержат множество отдельных уровней, переход между которыми осуществляется по ходу сюжета. Но если взять такие популярные сегодня игры, как GTA, то в них представлен один большой цельный мир, лишь условно разделяемый на уровни.
Но как бы там ни было, уровни создаются в играх всех жанров. Даже в простой казуалке, где нужно переставлять яркие квадраты, есть уровни – они выступают в роли тех самых квадратов и игровых полей. А в браузерных играх в роли локации выступают отдельные html-страницы.
Построением уровней занимается специальный человек – левелдизайнер. Не от планировки и оформления, а именно от дизайна уровней зависит геймплей. Стоит уточнить, что это правило не распространяется на файтинги, а также на большинство казуальных и спортивных игр, где уровни крайне примитивны. Опытные разработчики тратят очень много творческих сил на левелдизайн, ведь однообразная планировка уровней может просто загубить игру с прекрасным оформлением, подкрепленным новейшими технологиями.
Стоит заметить, что довольно часто в комплекте с игрой дается редактор уровней, с помощью которого рядовые игроки могут сами создавать себе новые уровни и карты. Такие редакторы создаются не только для развлечения геймеров, но и для того, чтобы отыскать среди игровой аудитории наиболее талантливых людей, при помощи которых многие студии решают свою кадровую проблему. Разработчики часто выкладывают лучшие работы игроков на своих официальных серверах.
Работа над графикой и артами
Созданием игровой графики занимаются художники, геймдизайнеры. Некоторые разработчики, которые работают над простой 2D-игрой, не обращаются к помощи профессионалов, а стараются сами изобразить что-нибудь из пикселей.
А с артами дело обстоит так: сначала нужно создать образы врагов, героев, игровых предметов и задних фонов. Сначала всё это изображается на бумаге или на компьютере с использованием графического планшета. Этот этап в разработке игры могут пропустить небольшие студии, но большие компании без него обойтись никак не могут, так как именно наглядные изображения помогают дизайнерам понять, чего от них ждут в итоге. И уже на основе артов дизайнеры создают либо двухмерные спрайты из пикселей, либо трёхмерные модели из полигонов.
Анимация, спецэффекты и прочая красота
Немаловажным этапом в разработке игры является анимация. На сегодняшний день для создания неотличимых от людей 3D-персонажей существует специальная технология «Motion Capture», которая позволяет создавать анимации на основе движений настоящих людей. Такую технологию могут себе позволить только очень богатые и крупные компании, ведь для использования «Motion Capture» необходимо приобрести не только дорогостоящее оборудование, но еще и нанять группу актеров, с которых будут копироваться движения.
По сравнению с анимацией, задние фоны являются плёвым делом – достаточно нарисовать их один раз, поставить в нужное место на уровне, и всё.
А вот визуальные спецэффекты – это, по сути, те же анимации, только вместо перемещения объектов в них используются перемещения частиц и светофильтров. Использование спецэффектов добавляет игре яркости и экспрессивности. Без эффектов наподобие лазерных лучей, огня, рвущегося из окон, а также взрывов гранаты игра будет выглядеть пресновато.
Важной частью работы является оформление интерфейса, которым занимаются художники, верстальщики html-страниц и программисты. Визитной карточкой игры является начальное меню, которое должно выглядеть идеально. Помимо этого, на игровом экране еще есть множество элементов, которые также требуют «отделки»: миникарта, количество жизней, инвентарь героя, экраны диалогов, списки заданий, меню быстрого выбора действия и прочее. На английском языке всё это называют одним сокращением – GUI (Graphical User Interface - графический пользовательский интерфейс).
Сюжет и всё, что к нему прилагается
На заре своего существования компьютерные игры обходились без сюжета, затягивая игроков только лишь игровым процессом. Но сегодня всё изменилось, и даже простенькая казуалка может похвастаться сюжетом.
Сегодня игрок может выбрать себе любую игру, и привлечь его к новому проекту довольно сложно. И если завлечь рекламой или тизером еще удастся, то уже при прохождении самой игры прожженный геймер сразу пронюхает, где его обманули. Чаще всего, даже одно нудное место в игре отталкивает игрока навсегда, поэтому сюжет нужно продумывать досконально. Геймер, он такой – обманутых надежд не прощает.
Логичность событий, уникальность задумки, брутальный или суперумный протагонист и хорошая драматургия всегда срабатывают.
Самым лучшим вариантом является использование скриптовых сцен. Продумыванием скриптов занимаются сценаристы, а их реализацией – программисты. Что представляет собой скрипт: игрок заходит в определенное место, или выполняет какие-то условия, а после этого начинает совершать действия, запрограммированные на этот случай. К примеру, мы выбираемся из подземелья, находим рядом взрывчатку (выполнили условие), через несколько секунд в подземелье слышны звуки оружия (бегут враги), а мы спокойно берем найденную взрывчатку и бросаем в подземелье (произошли события).
При помощи скриптовых событий можно, как в Call of Duty, превратить игру в аттракцион запрограммированных действий. Но такой подход тоже может стать проигрышным, ведь у игрока ограничена свобода действий, что нравится тоже не всем.
Практически ни одна игра сегодня не обходится без диалогов. Они происходят в процессе игры, но в безопасных местах, либо с остановкой игрового времени, чтобы игрок мог сосредоточиться только на тексте. Есть еще повествования, которые игроку приходится выслушивать, так как игра на это время приостанавливается. Диалоги, конечно, лучше, так как они придают прослушиванию текста интерактивность и практический смысл – правильный вариант ответа может принести бонус или облегчить дальнейшее прохождение в игре.
При создании игры разработчики стараются хранить тексты повествований и диалогов в отдельных файлах, подгружаемых по ходу игры. Отделение художественного текста от технических кодов помогает в будущем, если разработчик решает создать локализованную версию игры на других языках мира.
Вместо диалогов и повествований разработчики часто используют в определенных контрольных точках уровней катсцены (видеовставки). Такие заставки создаются как при помощи игрового движка, так и при помощи отдельных видеофайлов. Созданием видеовставок занимаются аниматоры, художники, 3D-модельеры, режиссеры и сценаристы.
Заставки, которые создаются на движке игры, по своему качеству уже практически не уступают отрендеренным заранее видеозаписям, вот только для их просмотра в хорошем качестве у игрока должен быть довольно мощный компьютер.
Звук
Звуковые эффекты сегодня способны не просто заполнить тишину – они являются продолжением графического стиля игры. Бывает, что неуместные или монотонные звуки портят всё впечатление.
Чаще всего в качестве звуковых эффектов используются реальные звуки, записанные в цифровом виде. К тому же, здесь дела обстоят, как и с движком – всё уже давно придумано, нужно только зайти в интернет и выбрать нужный звуковой эффект из множества бесплатных коллекций.
Но помимо звуков для полноценной игры нужна еще и музыка (саундтрек). Музыка является одним из стилистических элементов игры, она влияет на настроение геймера. Выбирать музыку не так уж и просто, ведь нужно идеально вписать ее в геймплей, учитывая темп и атмосферу игры. Для поиска музыки, как и для звуков, существуют уже платные и бесплатные готовые варианты, но некоторые разработчики нанимают композитора, который пишет уникальную музыку для определенной игры.
Еще одной составляющей игры является озвучка игровых диалогов и монологов. Это не самое дешевое удовольствие, да и не самое обязательное. В некоторых играх диалогов и текстов практически нет, а там, где есть, их оставляют в виде текстовых субтитров. Небольшие игры вовсе обходятся без озвучки, а в масштабные проекты разработчики даже приглашают для озвучивания персонажей звезд мировой величины.
Проверка на ошибки
На начальном этапе разработки игра представляет собой набор разных наработок, которые нужно соединить воедино на этапе сведения материала (а-версия). При построении игры на игровом движке объединение объектов происходит постепенно, с самого начала процесса. Игру называют альфа-версией, пока она еще не собрана до конца. В этот момент уже можно заниматься тестированием отдельных уровней, скриптов и других механизмов. К слову, на этом этапе можно выпустить демо-версию или видеоролик с игровым процессом, что является уже начальной рекламой проекта.
Когда игра уже полностью собрана, начинается работа над устранением ошибок (багов). Поиском ошибок в игре занимаются тестеры, многие из которых являются обычными игроками, которых разработчики потом приглашают к сотрудничеству. Если повезет.
Без багов, конечно, не обойтись, так как игра является системой со сложной структурой. На первый взгляд кажется, что элементы игры довольно просты, но связи между ними настолько сложны, что отладка материала может занимать до 40% всего времени разработки игры. Собранная, но не проверенная игра называется бета-версией.
Многие разработчики организовывают открытые бета-тесты в онлайн-играх, чтобы каждый желающий игрок мог оценить то, что уже сделано.
Выход в свет
И вот тот этап, когда начинается работа рекламного издателя. Обычно реклама игры размещается на интернет-ресурсах, в самих магазинах компьютерных дисков или на уличных баннерах.
Игровую индустрию нельзя сравнивать с обычным вещевым рынком – здесь свои особенности. Информация среди игровой аудитории разносится с молниеносной скоростью и охватывает всех вокруг. Если игра действительно качественная и стоящая, то о ней бесплатно напишут игровые журналы и информационные интернет-порталы, а дальше свою работу сделает «сарафанное радио». Получается так, что, не потратив ни копейки на рекламу, но заслужив уважение игроков, разработчики обеспечивают успех игре.
В продвижении компьютерной игры большую роль играет локализация. Если игра выпускается только на русском языке, то рассчитывать на масштабное ее распространение и высокую прибыль не стоит.
Гораздо выгоднее использовать универсальный английский язык, который понимает половина планеты. Конечно, в идеале неплохо было бы выпускать игры на нескольких популярных языках – английском, французском, немецком, испанском, китайском, японском. Но для этого нужно нанимать целый отряд переводчиков, которые, желательно, должны быть носителями языка. Это очень затратно, и потому редко используется.
Система продажи
Реклама есть, и теперь нужно решить, как игру лучше продать. Классическим способом является выпуск большого тиража компьютерных дисков, которые будут разметать (если повезет) в розничных магазинах.
Но такой способ подходит лишь для тех игр, которые уже имеют начальную популярность. Выигрышным вариантом для небольших компаний разработчиков будет распространять свою игру через крупные онлайн-магазины. Благодаря огромной аудитории игроков, которые пользуются популярными сервисами (к примеру, Steam), почти каждая игра может стать известной по всему миру.
Хорошая поддержка
Если вы думаете, что создание и продажа игры – это конечный этап, то вы ошибаетесь. Когда игра уже находится у геймера, он может заметить очень серьезные погрешности, которые разработчикам придется исправлять. Не зря ведь у крупных компаний существуют даже целые отделы технической поддержки, занимающиеся такими вопросами.
Несмотря на то, что бета-тестеры уже всё досконально проверили, может оказаться так, что игроки находят мелкие или большие ошибки, которые прощать не собираются. Это могут быть проблемы с плохой совместимостью с определенным оборудованием, а также откровенные недоработки, приводящие к нелепым и обсуждаемым багам. В таком случае необходимо исправлять ошибки в уже готовой игре. Проще говоря, выпускать патчи.
Некоторым до сих пор в страшных снах являются "шедевры" из Assassin's Creed: Unity
С рыночной точки зрения, выпуск патчей является убыточным и бесполезным действием, которое не обязательно выполнять. Но потеря репутации для компании будет стоит дороже.
Ну и если всё удалось, то разработчики задумываются над тем, чтобы сделать серию игр: берут план разработки первой игры и начинают создавать новый проект по уже пройденным этапам.
Теперь и у вас есть руководство по созданию игры – пробуйте.
Спасибо за блог! Великолепные советы!!! Надеюсь,что они помогут мне
про русские локализации:
а вы знали что такая игра существует?