Всем привет, подскажите лучший варик перейти с unity на unreal
Такой вопрос я просто сейчас узнаю анриал и пытаюсь конечно же приводить сравнения. В каких местах используется с++, а в каких блу принты?
Как работать с какими-либо паттерными или как вообще нужно строить проекты? А то просто ставить блу принты и обменивать их инфой между собой мне кажется бэд практика.
Большая беда блюпринтов - решение конфликтов и ревью кода при совместной разработке.
Проекты без жесткой руки часто сваливаются в код в блюпринтах, ИМХО это плохо. Одно дело прототип на блюпринтах набросать, другое вести проект в БП.
Но и сам таким грешу, потому что это быстро, а то что техдолг... Ну на то он и долг, что отдавать когда нибудь потом.
Привет, берешь и пишешь. Анриловские плюсы ближе к шарпу, чем к нативным плюсам, со своим GC, делагатами, интерфейсами и т.д. Паттерны одинаковы везде, что на юньке, что в анриле. Если по началу сложно начни с блупринтов, потом пересядешь на плюсы :)
Для начало стоит разобраться в ключевых классах, гейм инстанс, гейм мод, контроллер худ, павн, персонаж и далее по списку.
Как разберёшься станет понятней какой должна быть структура проекта.
Если проводить аналоги то префаб в юньке = актор в анриле, вроде даже курс был от эпиков для тех кто хочет перейти с юнити на анрил, стоит поискать.
По поводу блупринтов можно спокойно делать логику на них, а потом при необходимости тяжёлую логику переписать на С++. Насколько мне известно это нормальная практика.
BP нужны для тех не знает С++.
Юнити
Возможно, будет интересно: https://gamedev.ru/flame/forum/?id=277955
А если конкретно про C++ vs BP, то по-хорошему, сущности реализуются на C++, а связывание - на BP. На выходе получатся понятные классы с минимальными зависимостями и чётким разделением ответственности, из которых ты как из блоков лего собираешь игру без километровой лапши в BP.
На тему С++ и БП есть отличное видео в котором объясняют что для чего используется. На самом деле нет никакого противостояния, в коммерческих играх используется и то и другое.
https://www.youtube.com/watch?v=VMZftEVDuCE
Очень интересные ответ и как всегда разное мнение, всем спасибо)
А что скажете насчет вакансий где в больших студиях пишут, что нужен с++ в
Для этого нужно учить обычные плюсы или анриловские только хватит?
И какая разница между анриловскими плюсами и дефолтными ?
Fantomext
> какая разница между анриловскими плюсами и дефолтными ?
Анриаловские плюсы странные и урезанные, больше похожи на C# (такое чувство, что изначально этот движок шарписты и писали). Поддержки стандартной библиотеки нет, стандартной RTTI нет, почти не поддерживаются шаблоны, автоматические указатели представляют из себя мешанину из неконсистентных "прибитых сборку" решений, зачем-то прикручен GC с совершенно неочевидным синтаксисом через голые указатели.
Если прям надо использовать обычные плюсы - то это всё равно реально, но подружить их с классами движка - отдельная задача со звёздочкой.
pahaa
То есть c++ unreal и c++ дефолт это даже разные языки? ахаха
pahaa
> через голые указатели
Начиная с пятерки голые указатели не используются. Их все еще можно использовать, но для всего есть свои обертки.
Fantomext
> То есть c++ unreal и c++ дефолт это даже разные языки?
Qt C++ это С++ или другой язык?
Тут также как и в Qt навернуты свои возможности поверх языка.
Никто не мешает использовать стандартную библиотеку, но ты не сможешь её классы пробрасывать в движок.
Ну и почти для всего есть своя реализация, так что желание использовать стандартную либу возникает редко.
Плюсы такие же. С лямбдами, базовым синтаксисом и всем остальным.
@!!ex
а то есть если выуч плюсы анриала, то я смогу и на обычных писать? Я просто не очень понимаю в чем их разница(
Мой опыт писания был лишь на c#
Fantomext
> это даже разные языки?
да
Если посадить за UE человека который всю жизнь писал на плюсах, ему придётся учиться заново. Он научится быстрее, но и только. А ещё будет долго материться.. потому что с++ не является основным в UE, ведь почти на каждую мелочь для правильно работы нужен призрак из блупринта который наследуется от c++. Уж так он устроен, не просто параметры вынесены в БП, а всё завязано на то чтобы получать для них доступ для БП, что немного коробит всю систему. То есть тебе БП как бы и нафиг не нужны, а ты вынужден их создавать. То есть совсем без БП игры не получится.
Тема в архиве.