Здравствуйте. Как выяснилось я не только недобросовестный студент, но и такой же блогер, т.к. затянул с продолжением блога аж на неделю, но прошу меня простить – у меня весьма внезапно родилась сестра и большую часть времени я праздновал это событие, а потому был попросту, мягко говоря, «не в состоянии». В первой половине блога я увлекся историей и очертил лишь самую общую картину игростроя, ну а теперь попытаюсь дать более конкретную информацию об инструментах, с которыми начинающему инди-игроделу можно обучаться своему ремеслу.
Как же с этим работать?
Конечно стоило бы описать, с чем же Вы столкнетесь, запустив игровой движок в режиме редактора. На что это похоже? Да, в принципе, на любой редактор вообще. Представьте себе какой-нибудь Photoshop. Есть рабочая область, есть панель инструментов, есть множество настроек, есть куча объектов (графических примитивов, слоев, масок), с которыми нам и предстоит работать. Настроив все должным образом и добившись нужного эффекта, мы сохраняем получившееся изображение и заканчиваем работу.
С игровыми движками все намного сложнее, т.к. работа с изображением лишь небольшая часть будущей игры, но общие элементы интерфейса все те же: рабочая область, настройки, инструменты, рабочие объекты.. Но помимо этого в игровом движке обязательно будет область предпросмотра, в которой Вы сможете проверить результат Вашей работы; дерево каталогов проекта, которое необходимо, чтобы не запутаться, в каких папках лежат различные «ингредиенты» игры; а также редактор для написания текста скриптов на поддерживаемых языках программирования с поддержкой автопроверки кода, подсветки текста и прочими удобствами.
Получается, что современный игровой движок это множество различных редакторов (текстовых, графических, видео, аудио и многих других), собранных в одной программе и объединенных общим интерфейсом с явным упором на визуальное программирование (минимум кода, больше работы «кликом мышки»). При этом игровые движки обучены работать с продуктами деятельности сторонних редакторов и поддерживают все популярные форматы файлов, чтобы Вы могли спокойно нарисовать спрайты персонажей в том же «Фотошопе» и потом безболезненно перенести все это в свою игру.
ВАЖНО. Современные игровые движки работают с готовыми объектами (моделями персонажей, текстурами, физическими моделями, камерами и т.д.), поэтому все скрипты пишутся на объектно-ориентированных языках программирования.
Далее я дам немного информации о самых доступных и популярных движках.
Game Maker: Studio
Иногда мне кажется, что многие даже и не догадываются о том, что в Steam продаются не только игры. А между прочим, именно там можно совершенно бесплатно скачать Standart-версию этого очень простого и удобного игрового движка. На нем делают простенькие двумерные игры, игры для мобилок, и различные ремейки старых игр собственными руками. Этот движок хорош в первую очередь именно, как обучающий конструктор для людей, которым хочется с чего-то начать.
Плюсы:
— Легко найти, легко скачать и установить. Буквально 200 Мб загружаются на Ваш жесткий диск и уже можно начинать.
— Очень много подробных обучающих материалов, что немаловажно, на русском языке.
— Большинство действий при разработке, совершаются путем внесения необходимых настроек в различные объекты это самое простенькое «программирование кликом мышки».
— Собственный язык программирования Game Maker Language умудряется быть похожим на все популярные языки программирования разом, при этом будучи крайне упрощенным и вполне самодостаточным. Разобравшись в нем, изучать такие языки, как C# и Java, реально проще.
— Множество готовых конструкторов, из которых можно слепить свою игру.
Минусы:
— Крупные проекты реализовывать на Game Maker практически нереально. Только небольшие 2D поделки.
— Чтобы выпустить игру в тот же Steam нужно будет вложить порядка 200$ на Pro-версию и подписку Greenlight.
— Без денежных вливаний можно будет разработать игру только для Windows.
— Приличная часть обучающих материалов делается некомпетентными в данном вопросе людьми (порой даже школьниками). Поэтому все теоретические знания, что они дают, не стоит воспринимать всерьез.
Unity
Очень популярный и доступный игровой движок, на котором уже создано огромное количество действительно впечатляющих игр. Раньше был клеймен, как багнутый, некрасивый и жутко тормозящий, однако в версии 5.0. движок был очень сильно переработан в лучшую сторону и стал еще доступнее для простых обывателей. На официальном сайте можно скачать персональную версию движка совершенно бесплатно, но порог вхождения будет уже на порядок выше, чем у того же Game maker.
Плюсы:
— Полноценная функциональность персональной бесплатной версии движка.
— Официальный сайт движка «unity3d.com» и его русское сообщество. Там действительно можно найти все необходимые знания и материалы, а также обратиться за советом к уже бывалым разработчикам.
— В наличии все современные технологии и инструменты для работы с каждым аспектом игры.
— Возможность зарабатывать на играх безо всякий отчислений до 100000$ в год.
— AssetStore внутренний магазинчик, в котором можно как покупать, так и продавать различные готовые модельки, скрипты, текстурки и даже целые конструкторы для игр. Много товаров доступно бесплатно, вдобавок в сети можно откровенно «спиратить» и платные товары (впрочем, если владелец узнает, что Вы продаете игру с украденными ассетами, то можно нарваться на неприятности).
— Наличие отдельного 2D движка, заточенного под работу именно с двумерными играми.
— Честная кроссплатформенность.
— Поддержка С#, Java и интеграция с Microsoft Visual Studio (важный пунктик для будущих программистов).
Минусы:
— Некоторая сырость новой 5.0 версии движка (лично я словил один пренеприятный баг, когда вместо интерфейса редактора я видел серый экран, впрочем, на форуме быстро нашел решение проблемы).
— При попытке работать в новой версии движка с материалами, заготовленными для старой версии, частенько возникают проблемы.
— Раздражающая не убираемая заставка в бесплатной версии.
— Отсутствие инструментов для командной разработки в бесплатной версии.
— Откровенно средненькая оптимизация проектов на бесплатной версии, как следствие отсутствия в персональной лицензии некоторых инструментов для отладки.
— Если Ваш доход превысит 100000$, то непременно придется купить подписку на профессиональную версию движка за 75$ в месяц.
— Достаточно высокий порог входа, т.к. необходимо хотя бы немного знать языки программирования (C#, Java) и желательно уметь работать в сторонних редакторах для создания будущих текстур и 3D моделек игровых объектов.
Unreal Engine
Ну и под конец, конечно супер-мега популярный любимчик современных инди производства Epic Games. Причем стал он таким относительно недавно: с релизом 4-ой версии движка. В представлении данный движок не нуждается, т.к. его популярность среди разработчиков всех мастей прямо-таки зашкаливает, хотя движок еще только начал наирать обороты. В рамках данного блога я рассмотрю ценность Unreal Editor последней четвертой версии движка именно для одинокого начинающего разработчика.
Плюсы:
— Абсолютная бесплатность и никаких разных версий, все функции сразу доступны. Если заработаете больше 3000$ за квартал, то Epic Games получит 5% от всей прибыли.
— Наличие всех суперсовременных технологий (особенно это касается графики), которые можно смело интегрировать в Ваш проект.
— Удобный интерфейс и гибкая настройка редактора.
— Технология BluePrint позволяющая с помощью блоксхем визуально программировать даже такие сложные вещи, как ИИ врагов, тем самым упрощая Вам разработку в случае, если Вы плохо разбираетесь в программировании.
— *До недавнего времени сами Epic Games спонсировали игры, выпущенные на Unreal Engine 4, достаточно было им отправить рабочее демо своего проекта.
— Удобные внутренние редакторы для работы с графикой.
— Наличие встроенных готовых заготовок с заранее предустановленными настройками для самых различных игр.
— MarkerPlace, магазинчик материалов для игр встроенный в лаунчер редактора, который постепенно обрастает множеством полезных дополнений.
—- Отсутствуют проблемы с версиями проекта и версией движка, т.к. версию движка можно свободно выбрать прямо в лаунчере.
— Кроссплатформенность и весьма удобная работа с играми под консоли.
Минусы:
— Немаленькие рекомендуемые системные требования.
— Русское сообщество пока еще только набирает обороты. Отсюда и следующий минус.
— Мало обучающих материалов на русском языке, впрочем, и на английском их значительно меньше, чем для того же Unity.
— Скрипты пишутся на С++, что гарантирует достаточно высокий порог вхождения.
Итог
Ну вроде и все. Надеюсь я дал достаточно информации для тех, кто хотел бы начать делать игры своими руками или просто интересовался, тем как это делается. Выводы очевидны: нужно лишь время, минимум навыков и усердие, т.к. теперь для самоучек-нищебродов есть все самые выгодные условия. Возможно, если вдруг вспомню или Вы мне подкинете интересную тему, я напишу новую часть. Удачи!
Чтобы оставлять комментарии вам необходимо войти под своим аккаунтом. Если вы еще не зарегистрированы, то можете пройти экспресс-регистрацию, которая займет всего пару минут.