Читаем Хочу в геймдев! полностью

Для небольших компаний или инди-команд решение самостоятельно создавать движок не имеет экономических преимуществ, но может быть оправданно в случае необходимости каких-то необычных решений, которые невозможно получить, используя готовый вариант. Это могут быть вещи, связанные, например, с воксельной графикой, где важно передать разрушаемость предметов. Для игр типа Minecraft характерно использование собственных движков, так как графика там достаточно примитивная, но предметы должны уметь правильно разрушаться. Или же вы хотите сделать игру с необычным базовым типом геймплея: например, головоломку, где нужно на призмах раскладывать световые лучи в радугу. Если готовые движки не смогут предложить вам готовых решений для передачи оптики, придется создавать эту часть игры своими силами.

Еще один вариант – не делать движок с нуля, а взять наработки опенсорсных (от англ. open-source), то есть выложенных в открытый доступ, движков. Исходный код таких движков доступен всем, и его можно править под свои нужды. Естественно, вам понадобятся опытные программисты, чтобы справиться с такой задачей. Многие популярные современные движки имеют гибкие инструменты для расширения и кастомизации (разной степени сложности и удобства). «Прикрутить» уникальную механику к готовому движку намного легче, чем с нуля создавать свой полноценный движок с аналогичными возможностями.

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

Готовые игровые движки можно разделить по двум признакам. Во-первых, по игровой платформе: движки могут быть кросс-платформенными или же подходить только для создания игры под конкретную платформу (мобильные, ПК-игры и т. д.).

Во-вторых, важен жанр создаваемой игры. Существуют игровые движки, так скажем, широкого профиля, поддерживающие игры разных жанров, но есть и специализированные движки, дающие инструментарий для создания, например, визуальных новелл (Ren’Py). Движок, спроектированный для гонок, будет существенно отличаться от движка для MMORPG или стратегии в реальном времени. Но есть и общие вещи: например, трехмерные игры любого жанра требуют системы 3D-рендеринга, взаимодействия с геймпадом, клавиатурой и/или мышью, звукового сопровождения и так далее.

Еще один важный фактор при выборе движка – опыт участников проекта, в том числе языки программирования, которыми они владеют.

МНОГОПРОФИЛЬНЫЕ ДВИЖКИ UNITY И UNREAL ENGINE

Самые популярные игровые движки – это Unreal Engine и Unity.

UNITY развивается с 2005 года. На Unity разработаны тысячи приложений и игр разных жанров на более чем 25 платформах. Его любят как крупные студии, так и инди-разработчики.

Изначально Unity создавался для компьютеров Mac, в следующих версиях добавлялись новые платформы: Windows, IPhone, Android, Xbox, Playstation и другие.

Для написания скриптов движок использует язык программирования C#, считающийся несложным в изучении и работе. В редакторе Unity простой интерфейс, что позволяет легко производить отладку игры. Главными преимуществами Unity считают кросс-платформенность и наличие визуальной среды разработки.

Если выбирать между Unreal Engine и Unity, можно отметить, что последний иногда удобнее для начинающих программистов, он предлагает множество готовых решений и для создания простых игр обычно выбирают именно его. Сообщество Unity считается самым большим (ведь он стал первым бесплатным движком для инди-разработчиков), поэтому, если возникнут какие-то вопросы, вы всегда сможете рассчитывать на консультацию. Однако, если с программированием отношения сложные, Unreal Engine может кому-то показаться более дружелюбным.

Работая с любым движком, сложно добиться ААА-графики в динамике, особенно для консольной игры. Планка качества графики и спецэффектов непрерывно растет, организация совместной работы над огромным количеством внутриигровых объектов усложняется. За последние годы разработчики Unity проделали большую работу для повышения уровня графики, так что сегодня создавать красивые и качественные игры можно на обоих движках.

Большие открытые миры – еще одна сложная задача. Поэтому многие известные игры (Grand Theft Auto, Red Dead Redemption, Metal Gear Solid 5, Horizon: Zero Dawn и другие) сделаны на собственных движках, заточенных под эту техническую задачу. Многие подсистемы Unity не рассчитаны на создание чего-то подобного – к примеру, на организацию большого количества сцен и объектов. В ряде случаев они накладывают серьезные ограничения на размер внутриигрового мира, но их можно обойти с помощью уловок гейм-дизайна. Unity постоянно работает над новыми технологиями для решения таких задач.

Перейти на страницу:

Все книги серии Российский компьютерный бестселлер. Геймдизайн

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
C++: базовый курс
C++: базовый курс

В этой книге описаны все основные средства языка С++ - от элементарных понятий до супервозможностей. После рассмотрения основ программирования на C++ (переменных, операторов, инструкций управления, функций, классов и объектов) читатель освоит такие более сложные средства языка, как механизм обработки исключительных ситуаций (исключений), шаблоны, пространства имен, динамическая идентификация типов, стандартная библиотека шаблонов (STL), а также познакомится с расширенным набором ключевых слов, используемым в .NET-программировании. Автор справочника - общепризнанный авторитет в области программирования на языках C и C++, Java и C# - включил в текст своей книги и советы программистам, которые позволят повысить эффективность их работы. Книга рассчитана на широкий круг читателей, желающих изучить язык программирования С++.

Герберт Шилдт

Программирование, программы, базы данных