Критикуешь — предлагай. Хорошо: альтернативы Unreal Engine 5.
Вижу, что многие из вас ждали от меня конкретики и, судя по всему, не получили её в прошлом посте. Ну что ж, давайте поговорим по делу.
Разберёмся, почему я критиковал Unreal Engine 5 и с чем его сравнивал. Начнём с того, что UE5 действительно мощный инструмент, но он подходит далеко не всем и требует огромного количества ресурсов и опыта. Чтобы получить максимум от этого движка, зачастую нужно переписывать его под себя, внедряя кастомные решения через SDK. Это значит, что студиям приходится вкладывать огромное количество времени и денег в оптимизацию и адаптацию.
Теперь давайте сравним с другими движками. Возьмём, например, Unity. Да, его часто критикуют за то, что он якобы "устарел", но с точки зрения гибкости и лёгкости освоения, Unity остаётся фаворитом для многих инди-разработчиков. Он не требует таких жёстких системных ресурсов, как UE5, и более прост в освоении. Конечно, Unity не предоставит вам Nanite или Lumen, но зато он не будет душить вашу систему на каждом шагу. Unity хорош для проектов, где важна скорость разработки и кроссплатформенность.
Теперь возьмём CryEngine. Этот движок тоже имеет свои сильные стороны, особенно когда дело касается графики. CryEngine был создан для создания больших, детализированных миров с потрясающими визуальными эффектами. Однако, как и UE5, CryEngine тоже требует серьёзных усилий для оптимизации, но, в отличие от Unreal, он изначально лучше приспособлен для работы с открытыми мирами и даёт больше свободы в настройке движка под конкретные нужды проекта.
Итак, критика UE5 заключается не в том, что это плохой движок. Он мощный, но слишком требовательный и сложный для большинства разработчиков, особенно если студия не имеет огромного опыта или ресурсов. Альтернативы, такие как Unity или CryEngine, могут предложить более сбалансированный подход, в зависимости от того, что вам нужно для вашего проекта.
Так что да, конкретика есть, и она вот здесь перед вами. Unreal Engine 5 — это инструмент с огромным потенциалом, но далеко не единственный и далеко не универсальный. И если кто-то думает, что на этом движке легко сделать качественную игру, пусть попробует сам и тогда поговорим.
Я так понимаю автор не работал с этими движками или хотя бы не имеет связей с теми кто на них реально работает.
Ах, классика жанра — "Ты же не работал с этим, значит, не имеешь права что-то говорить!" Ну давай, расскажи мне побольше о том, как ты лично со всеми движками работал и у тебя есть связи с "реальными" разработчиками. Видимо, тебе виднее, кто тут вообще что знает.
Проблема в том, что даже если я бы и работал с каждым из этих движков, ты бы всё равно нашёл повод не согласиться. Так что оставь свои догадки при себе. Тут речь идёт не о том, чтобы сидеть в уголке и шептаться с "реальными" разработчиками, а о том, чтобы видеть ситуацию с разных сторон и не бояться называть вещи своими именами. Если для тебя это новость, то добро пожаловать в реальный мир разработки, где не всегда надо лично перелопачивать всё, чтобы видеть, где проблемы.
Как начинающий соло разработчик, скажу, что я пробовал всё из того, что здесь написано. Более того, имел опыт разработки собственного игрового движка в бытность, когда был студентом. Поэтому, есть что сказать по этому поводу.
На мой взгляд, UE самый сбалансированный среди всех. Да, он прожорливый, но его архитектура и предоставленный инструментарий реализован максимально логично и понятно, в некоторых особенностях можно разобраться вообще без документации, например, в ретаргете анимации или настройке HUD. Многие разрабы часто говорят, что что-то там переписывают в UE, так как из коробки оно работает не так, как нужно. Но полноценного ответа, что именно там работает не так, как нужно, никто не даёт.
Unity слишком гибкий, из-за этого порой не определить, так называемые лучшие практики. Многие элементы реализуются совершенно по разному у разных авторов уроков, а потому непонятно, какой подход верный. В отношении конкретного движка, такое понятие должно быть. Плюс ко всему, он регулярно крашится по неизвестным причинам.
С CryEngine мне не удалось нормально разобраться. Документация куцая, многие вещи реализованы не интуитивно, уроков ещё меньше. Возможно, если забашлять денег, дадут нормальную базу для освоения, но то, что лежит в свободном доступе никуда не годится.
Ого, какой развёрнутый коммент! Прямо как в тех же учебниках, где каждое слово выверено до идеала. Ты, значит, "начинающий соло разработчик" и уже успел всё попробовать? Да ты просто герой нашего времени! А ещё и свой движок пилил в студенчестве? Так и представляю, как твои сокурсники в шоке от твоего умения "разбираться во всём без документации". Ну, конечно, как же без этого — ретаргет анимации на коленке настроил, HUD за три минуты сделал и пошёл дальше!
А про Unity ты вообще красавчик. "Слишком гибкий" движок, говоришь? Как это так, что там столько свободы, что даже лучшие практики не определить? Видимо, ты привык, что за тебя всё делают, а тут пришлось самому думать. Ну и CryEngine, конечно, добил — бедный движок, не смог удовлетворить твоим высоким требованиям. Документация, говоришь, куцая? А может, просто нужно было разобраться чуть лучше, а не жаловаться, что тебе не принесли всё на блюдечке?
Забавно, как ты пытаешься убедить всех в своей экспертности, сравнивая всё и вся, а на деле — обычный нытик, который хочет, чтобы всё работало по мановению волшебной палочки. Не трясись так сильно от того, что где-то что-то не сходится, и попробуй просто работать, а не искать оправдания в "куцых документациях" и "неопределённых лучших практиках".
а на сколько в нем удобно разрабатывать мобильные игры или 2d? Я на сколько знаю он не про это))
Нет универсальных движков, движок всего лишь инструмент, а инструмент выбирают в зависимости от цели! Хочешь красивого реализма легче и удобнее будет это делать на анриале, хочешь мобильную дрочильню с пикселями и лучше думаю юнити, хочешь платформер в 2d и чтоб не заморачиватся с кодом отлично подходит например Конструкт от Сцирры)) ну и далее
Те минусы что вы упомянули о Unity это на самом деле следствие настоящих причин ненависти к юнити.
А именно: части движка которые ещё в процессе разработки, которые всем обещают как что-то невообразимо крутое и на чем компания сосредоточится на максимум и "за этим будущее" просто забрасываются либо до релиза либо в скором времени после.
Проблема не в том что одно и то же можно сделать разными способами
Проблема в том что нет единого стандартного решения как это сделать.
Потому что стандартный способ #1 - он надёжный но медленный и не позволяет использовать некоторые продвинутые вещи, стандартный способ #2 - он все ещё новый, но за ним будущее, так что все должны использовать его (спойлер: никто не будет использовать, его разработку прекратят), но на данный момент ни один скрипт из стора не работает с ним, а некоторые напрямую конфликтуют. Стандартный способ #3 - мертворождённый, в него никто никогда не верил, но он есть, просто чтобы про него писали что так тоже можно, но его никто никогда не использовал и не будет, потому что его никогда и не поддерживали.
За конкретными примерами, лучше будет почитать перевод статьи "Почему Cities: Skylines 2 так тормозит" (оригинал: "Why Cities: Skylines 2 Performa poorly")
DOTS (ECS от Unity) не работающий с обычной системой рендеринга, сырость API не позволяющая использовать виртуальное текстурирование, Occlusion culling (обрезание невидимой геометрии), а это все продается на официальном сайте как будущее всех игр на юнити: https://unity.com/dots
Как насчёт Unigine?