Технологичный Unreal или удобный и приятный Unity?
В общем как то давно (года два-три назад) я решилась на попытку влиться в gamedev
т.к. уже приличное время грезила такими мечтами
(я до этого немного учила питон, немного учила плюсы и хорошо знала паскаль, была знакома с ООП, алгоритмами всякими и подобным, ибо была олимпиадницей по инфе)
решила я начать с Unity, нашла книжку на эту тему ("Unity а действии" - Джозеф Хокинг, всем советую, кто хочет начать что то мутить с юнити), её почти полностью освоила, чё то сделала там для себя, а потом всё это ушло на третий план ибо навалилась учёба, поступление и прочее
Но вот сейчас я снова готова впитывать в себя знания, особенно потому что это меня действительно интересует, но вот в чём загвостка, передо мной встал выбор Unreal или Unity,
но! сложность выбора не в том какой движок мощнее и круче, а в других аспектах, таких как: язык на котором придётся работать, рабочее окружение и удобство его использования, мануалы, доки и всякие прочие источники по использованию всего этого.
В языках у меня проблема выбора в том что вот Unity, для него можно юзать как C# так и JS, C# лично для меня спорный и пользы в его изучении (в моём случае настолько углублённом насколько это возможно, ибо такая вот я требовательная и любознательная, а ещё пока не пойму как это устроенно не успокоюсь...) то что потом будет чуть проще (наверно) влиться в другие С-подобные языки,
JS вот менее спорен, ибо помимо gamedev-а меня интересует ещё и webdev, где я уже освоила азы front-end-а и хочу дальше углубляться, но нужен JS, и вот в итоге двух зайцев сразу, Unreal требует C++ - язык который я в любом случае собираюсь рано или поздно осваивать, ибо надо и ибо хочу в принципе. В плане рабочего пространства разумеется Unity прекрасен лично для меня, он достаточно приятный на вид и достаточно удобный в использовании, Unreal же 0.0! я просто ужаснулась тому что там творится, внутренний перфекционист негодует, но конечно работать можно, просто привыкнуть надо будет, но всё равно такое себе. Ну а последний пункт, тут я не лично не шарю, но все говорят что по Unity инфы больше, понятнее, доступнее да и вообще ляпота несусветная, а Unreal страшно, сложно и всё что остаётся это страдать уткнувшись в документацию и терроризировать знающих людей своими тупыми вопросами. Вооот, вопрос ко всем кто дочитал до этого момента, что вы думаете? что по таким критериям лучше? что вы выбрали? почему выбрали? жалеете о своём выборе? (и памагите мне с выбором т.т пажалуйста т.т)
P.s. прошу прощение за стиль написания и манеру выражения мыслей, я ужасна в этом.
не много не по теме..
но..
"в моём случае настолько углублённом насколько это возможно, ибо такая вот я требовательная и любознательная, а ещё пока не пойму как это устроенно не успокоюсь...)"
вы с таким подходом
выгорите/за**етесь/потеряете весь энтузиазм.))
и скорее всего будете постоянно проваливать сроки выполнения задач. в Геимдеве обычно жуткий темп, и вам или очень повезет и будут делать узкого специалиста, давая задачки всегда в одном стэке и в одной тематике)
или же вам надо научиться кое что пропускать мимо)) изучив только достаточный уровень чтобы реализовать/починить/дописать за кем то, без углубления)
или невероятный вариант что у вас феноменальные способности к обучению и вы гений)) но простите такие гении обычно вопросов на тостере не задают)
(не порицание и гнобление, просто советы как не выгореть и не убить себе нервы на напряженной и не простой работе))
Ну смотри, я для себя выбрал Unity и вот почему:
1. Великий и могучий C#. Он удобен, лаконичен и в тоже время мощный.
2. Удобная документация
3. Куча готовых решений на любой случай жизни
4. Сильное и отзывчивое комьюнити
5. Простой и легкий интерфейс, который легко можно расширять
+ стоит отметить что Unity я выбрал когда UE был круче по многим параметрам, в году так 16. На сегодняшний день, Unity как мне кажется развился и ничем не уступает UE. Unity 2019 который находится в бете - бомба.
UE многие любят за блюпринты. Как по мне это очень не удобно. Зачем программисту блюпринты? И зачем дизайнеру делать логику? При всем при этом они уступают в скорости и что то более менее серьезное не напистаь без C++.
UE - ужасная документация и слабое комьюнити. Не хочу этим кого то задеть, это сугубо мое мнение.
UE - человеко-непонятный интерфейс.
Не советую тебе возиться с JS в Unity. В крупной игре без нормального ООП ты просто сломаешь себе мозг.
Блюпринты нужны для быстрого прототипирования.
Блюпринты нужны для гейм и левел дизайнеров, которые могут быстро без программистов что-то запрогать простое. Хорошая штука
достаточно уложить в голове одну простую штуку - Unity, это не просто C#/Mono. на самом деле, все веселее - там компиляция IL2CPP, потом LLVM с оптимизациями. так что вопрос о сравнении производительности, можно смело закопать... а остальное общеизвестно
А мне вот с первого взгляда больше понравился UE4. С документацией не могу оспорить, но и подтвердить тоже не могу. Quick Guide's очень даже неплохи и написаны доступным языком. Человек со знанием Pre-intermediate сможет спокойно читать гайды по UE4.
Так же, мне нравится, то что используется C++, а вот C# мне не нужен. C++ я могу использовать потом в более крупных компаниям по разработке веб сервисов, если я захочу в веб, так же он ближе к OpenCV. В общем лично для меня C++ кажется более выгодной сделкой чем C#.
Я видел разные интерфейсы: Cinema 4D, Archicad, 3D Max, Adobe LR/PR/Animate и я бы поспорил насчет UI/UX в Unity.
Так же мне не понравилась скорость загрузки редактора кода в Unity. У меня раньше был 3-х ядерный AMD на 2.1 GHZ и это ППЦ ТОВАРИЩИ! Таких тормозов я давно не видел.
В общем лично я рекомендую ознакомиться с Unreal Engine 4 и GODOT. Godot недавно вышла 3 версия и движок является довольно перспективным. Внутри можно использовать GDScript, который на 98% по синтаксису Python, также поддерживает C++ и C#.
Я очень долго работал с Unity, но потом решил попробовать Unreal Engine, после того как я загрузил демо сцену я сказал вау, Unreal чаще берут люди с большим опытом, Unity же берут абсолютные новички
Unity для того чтобы начать свой путь в геймдеве - идеален, т к поможет понять все плюсы и минусы геймдева а так же поможет определить что нравится делать именно тебе. После того как полностью обучишься Unity можно уже искать команду и подниматься выше (а там уже движок будут выбирать всей командой или вообще делать сами)