Думаю, что у каждого начинающего программиста возникала мысль сделать свою компьютерную игру. Возможно, вы шли дальше и скачивали Unity/UE4 на компьютер, и начинали копаться в огромных репозиториях. И ведь действительно, подавляющее большинство игр сделано на этих движках. Но почему, собственно, так?
Начнем с того, что не каждый разработчик выберет готовый движок. Например, в одном проекте, в котором я работал продолжительное время, программисты использовали среду другой игры, чтобы делать свою. Им было практичнее развивать среду, нежели взять готовый движок. Все зависит от конкретной ситуации.
UNREAL ENGINE 4
«Зачем мне брать что-то готовое?» - думал и Тим Суини в 1998 году. Это автор тогда еще мало известной игры Unreal на движке Unreal Engine. Epic Games по сей день продвигают своё детище.
Этот инструментарий довольно обширный: он позволяет делать игры для многих платформ, любых жанров; графика в связке с фотограмметрией выдает фотореалистичную картинку. Вы можете разрабатывать свой проект с помощью блюпринтов (Blueprint - схемы) или же писать код на С++.
Блюпринты – это узлы, которые наглядно показывают взаимодействие элементов и иерархию их связей. Этот инструмент позволяет прототипировать игры даже новичку!
Несмотря на свое прямое назначение, UE4 славится своей фотореалистичностью, что позволяет использовать его для спецэффектов в кино (для рендера в реальном времени и замены хромакея).
Однако, UE4 довольно тяжелый и требует производительное железо, которое есть, увы, ни у каждого.
UNITY ENGINE
Если же вы не нацелены на фотореализм, который, будем честны, не всегда и нужен игре – почему бы не выбрать Unity? Этот движок не такой масштабный, но не менее удобный.
Скажем прямо, Unity/UE4 – вечный спор, на который не стоит тратить свое время. Unity – это кормилец и опора для маленьких, камерных студий инди игр, но при больших возможностях он может потягаться и с UE4.
Основной код игры реализуется на C#. Движок имеет понятную структуру с интуитивными разделами, как для моделей, так и для скриптов, анимаций, ассетов и прочего. В случае проблем в реализации своего проекта Вам на помощь придет тонна статей и видеоуроков. Удобно, правда?
Конечно, это не все продукты, что есть на рынке. Многие студии идут по альтернативному пути: они не дают движок в свободное пользование, а лишь продают права на него другим разработчикам. Такой подход к начинающим разработчикам не играет на руку ни популярности, ни доступности среди геймдева. Некоторые, вообще, создают движки исключительно для пользования внутри компании.
Уверенным конкурентом для Unity/UE4 мог бы стать CryEngine от немецкой студии Crytek. Особенно версия CryEngine 5.6 впечатляет своими возможностями, но им вряд ли удастся откусить внушительный кусок рынка в обозримом будущем.
Тем не менее, ключевым моментом интереса разработчиков является концепт игры и возможность реализации в выбранной среде. Dota 2 – это всего лишь карта для «World of Warcraft 3» в прошлом, а Counter-Strike мод для Half-life.
DarkMinimum