Войти
ПроектыФорумСобираю команду

C++ UE4 совместное обучение. (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
6:26, 21 мая 2020

pahaa
>В до-диез всё ровно то же самое.
UB и Exception это совсем не одинаковые вещи.


#16
(Правка: 9:42) 9:26, 21 мая 2020

pahaa
> По сабжу: тоже когда-то думал, что изучать что-то вместе с другими начинающими
> удобно, т.к. у начинающих ход мысли похожий. Но это крайне порочная практика.
Да я так то больше по книгам, так эксперимента ради.
AInsolence
> Готов поучаствовать в обсуждении UE4, может кому-то подсказать, и точно самому
> поучиться. В ru сегменте информация по UE4 точно не будет лишней))
Анрил мне нравится мультиплеером из коробки(собсно ради того и переезжаю), а насколько удобно в нем прототипировать сетевую ФПС?
В Юнити, чтобы протестить клиент-сервер, надо сделать standalone билд и в редакторе запустить сервер, например, а на сбилженном клиент, что довольно муторно. А если еще и dedicated сервер, то совсем долго.
Анрил позволяет "по щелчку" запустить сервер и клиент(как бы в 2 окна)?

ЗЫ Глянул multiplayer testing и так да есть такое, вопрос снимается=) Вот не думал, что это так легко гуглится.

#17
9:27, 21 мая 2020

samrrr
> совсем не одинаковые вещи
Сказано было про краш, а краш будет вполне себе одинаковый, будь то segmentation fault или unhandled exception. Остальное - тонкости реализации, относящиеся к самому языку, а не к конкретному средству вызова хранимой функции.

#18
9:48, 21 мая 2020

samrrr
> pahaa
> > до-диез всё ровно то же самое.
> UB и Exception это совсем не одинаковые вещи.

Ребята, давайте жить дружно) Уже даже не ясно, о чем собственно спор?)
Кстати об Exception, в UE они оставлены за бортом в угоду производительности.

Еще про делегаты в UE4:

1) При использовании делегата можно использовать защищенный метод ExecuteIfBound(), который подразумевает вызов прикрепленных функций, только если они существуют, это позволит избежать ошибок.

2) Вызов Broadcast() для MULTICAST вариантов всегда безопасен.

3) Прикрепление функций, н-р:

  OnDelegate.AddDynamic(Foo);

Лучше писать в BeginPlay(), вместо конструктора, так как не всегда заранее известна    последовательность создания объектов под капотом, и можно столкнуться с багами, когда вроде бы прикрепленные функции не отрабатывают.

#19
9:53, 21 мая 2020

qGrin
> Анрил мне нравится мультиплеером из коробки(собсно ради того и переезжаю), а
> насколько удобно в нем прототипировать сетевую ФПС?

Не прототипировал, ничего не могу пока сказать. Но в планах имеется близкое знакомство с сетью.
Вообще UE огромный, что-то около 7 млн строк, если верить студийному DPack, поэтому это любовь на долгие годы))

#20
11:51, 21 мая 2020

qGrin
> Анрил мне нравится мультиплеером из коробки(собсно ради того и переезжаю), а
> насколько удобно в нем прототипировать сетевую ФПС?
Вот, кстати, плюсую. Интересный момент. Многие говорят, что сеть в анриале хорошая. И ещё многие говорят, что анриал заточен под шутеры. Но это всегда как-то общими словами идёт. Тоже интересно было бы узнать, в чём именно это выражается? И какого рода проблемы будут, если делать РПГ, а не стрелялку?

#21
12:54, 21 мая 2020

pahaa
> Вот, кстати, плюсую. Интересный момент. Многие говорят, что сеть в анриале
> хорошая. И ещё многие говорят, что анриал заточен под шутеры. Но это всегда
> как-то общими словами идёт. Тоже интересно было бы узнать, в чём именно это
> выражается?
Примерно через 100 человекочасов вплотную подойду к этому вопросу =)
pahaa
> И какого рода проблемы будут, если делать РПГ, а не стрелялку?
Да наверно никаких, вот ММО или сетевой РТС другое дело.

#22
(Правка: 22:10) 22:08, 21 мая 2020

qGrin
> Анрил позволяет "по щелчку" запустить сервер и клиент(как бы в 2 окна)?
да, куча видосов есть, но там один из клиентов выступает в роли сервера
чтобы dedicated сервер запускать придется немного заморочиться
посути все происходит через репликацию, т.е. синхронизацию состояний между клиентами, где важная логика может находиться на одном из клиентов или на выделенном сервере, но там ограничение на 128 чтоли игроков

вообще судя по тому, что мультиплеер игры на уе растут как грибы после дождя, с вхождением там проблем никаких нет
кстати Amazon GameLift дает апи для Ue

pahaa
> И ещё многие говорят, что анриал заточен под шутеры. Но это всегда как-то
> общими словами идёт. Тоже интересно было бы узнать, в чём именно это
> выражается? И какого рода проблемы будут, если делать РПГ, а не стрелялку?
потому что все основные проекты Эпиков шутеры и часть кода из них плотненько входит в состав движка, это вынужденная мера, чтобы не держать несколько параллельных веток в разработке

да и там скорее не шутерный функционал, а стандартный для экшен игр
где есть персонажи, которые могут получать урон/бегать/прыгать и т.п.
т.е. универсальная логика для создания игр с персонажами, любых
стратегий тоже, если юнитов будет немного, иначе лютый оверкил по функциональности

#23
(Правка: 9:33) 9:30, 22 мая 2020

Добавил в почти нулевой проект 2 строчки, скомпайлил, теперь при нажатии плэй он всегда крашится.
Вот они:

//UE_LOG(LogTemp, Warning, TEXT("Yaw %s"), CurrentRotation.Yaw + 90);
//CurrentRotation.Yaw += 90;
Что за прикол?
Апдейт:
Крашится из-за лога:
//FRotator CurrentRotation = GetOwner()->GetActorRotation();
UE_LOG(LogTemp, Warning, TEXT("Yaw %s"), CurrentRotation.Yaw + 90);

Нужно сохранять проект(мб отослать кому)?

#24
(Правка: 18:07) 17:37, 22 мая 2020

qGrin

UE_LOG() макрос крашит твой проект в рантайме. В строке неверно указан плейсхолдер:
%s - ожидает строку
%f - float
%d - integer

Ты указал %s, а передал число.

#25
17:56, 22 мая 2020

AInsolence
>Иначе будет неявное приведение к int с потерей точности.
Что ещё за сказки? Когда вдруг сумма инт и флоат стала интом?

#26
18:00, 22 мая 2020

qGrin
Можешь сохранять свои проекты на гитхабе. И писать сразу со ссылкой на код, если будет время - буду отвечать по возможности. Но только если ты у гугла уже спрашивал и не нашел ответ))

Макросов в UE много, и ошибки не всегда подсвечиваются.
Visual Assist неплохо помогает, но тоже не всегда.

В отчете об ошибке также смотри внимательно, чаще всего, четко указано в какой строке и какая конкретно проблема. Только в редких случаях может вылетать вообще без отчета.

#27
(Правка: 18:07) 18:06, 22 мая 2020

samrrr
Да, ты прав, сорян, тут я затупил. Исправлю в посте.

#28
0:01, 23 мая 2020

pahaa
> Вот, кстати, плюсую. Интересный момент. Многие говорят, что сеть в анриале
> хорошая. И ещё многие говорят, что анриал заточен под шутеры. Но это всегда
> как-то общими словами идёт. Тоже интересно было бы узнать, в чём именно это
> выражается? И какого рода проблемы будут, если делать РПГ, а не стрелялку?

По дефолту сеть настроена под шуторы. Но ее вполне можно перенастроить через конфиги теже, ограничение на подключение там же снимается. Что касается удержит 100 человек или 1000. Тут вопрос исключительно написания вашего кода, шуторы динамичные и поэтому требуют частого обновления данных того же положения. Тут нет нечего удивительно что у вас начинаются проблема где то в районе 100 игроков. В той же РПГ особенно таргетовых можно просто тонну всего оптимизировать и не передавать так часто. Что вразы увеличит число пользователей. Да и класторы не кто не отменял, но это я уже совсем далеко забежал.

#29
21:03, 23 мая 2020

mitroxa
> кстати Amazon GameLift дает апи для Ue
А не дорого там? А то я цен по рынку не знаю.
mitroxa
> любых
> стратегий тоже, если юнитов будет немного, иначе лютый оверкил по
> функциональности
В Юнити есть норм решение для сетевых РТС, не из коробки правда. Называется photon quantum стоит 1к$/месяц. А очень много юнитов на Анриле все равно не получится, нужно lockstep deterministic multiplayer или как то так.
AInsolence
> Только в редких случаях может вылетать вообще без отчета.
Ну буду надеятся, что какой нибудь неожиданный краш не стопанет мой проект =)

Меня пока больше волнуют 2 вопроса:
1. Время компиляции. Без live coding доходило до 40 секунд, правда обычно меньше. С live coding 2-3 секунды. Когда его допилят, чтобы новые классы компилил и т.д.?
Для решения, я так понимаю, надо обратится к скриптам или блюпринт.
К ВП у меня душа не лежит, хотя нашел интересный плейлист https://www.youtube.com/playlist?list=PLSlkDq2rO1t6qLf-lAiu8BszWL-7ePvco там почти все ноды. И книжку http://romeroblueprints.blogspot.com/p/table-of-contents.html
Пока приглядываюсь к Unreal.js, в js хотя бы опыт имею. Но доков мало.
Есть еще Unreal.hx. Еще питонов 2 варианта. И самый интересный по началу SkookumScript. Поизучал - это какое то извращение имхо. И везде маловато доков и туториалов.
2. "Многословность" языка. Пока юзаю сниппеты, для UE_LOG например.
Моя главная цель - это быстрые итерации, Анрил хорош, но уже поглядываю на Юньку =)

Страницы: 1 2 3 4 Следующая »
ПроектыФорумСобираю команду