Всем привет. Кто поможет решить задачку? Я создаю капсульные коллизии

на персонаже, чтобы вызывать дальнейшую логику при попадании в определенную капсулу.

Проблема в том, что не знаю как получить точное название каждой капсулы. Например вместо CapsuleChest у меня пишет BP_Player1_CapsuleChest.

В меш стрелять не хочу, т.к. коллизии на меше слишком дорого.

Может возможно как то иначе это выполнить? Цель в том, чтобы по конкретной коллизии аттачить стрелу к определенной части тела.

39 ответов

108 просмотров

а зачем еще капсулы? у тебя же физ ассет есть

Alexandr- Автор вопроса
NoCodeBugsFree
а зачем еще капсулы? у тебя же физ ассет есть

он разве не от коллизии скелетал меша идёт?

Alexandr
он разве не от коллизии скелетал меша идёт?

Зависит от того комплексный трейс ты кидаешь или нет

Alexandr
он разве не от коллизии скелетал меша идёт?

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

Alexandr- Автор вопроса
Aleksei Gagarin
ну и каждый раз когда используешь слова "дорого" и...

Дорого и очень дорого - это когда загружаешь 50 нпс со включенными коллизиями от скелетал меша и отключёнными - фпс с 60 падает до 20-30. Поэтому я хочу делать логику на капсулах

Alexandr
Дорого и очень дорого - это когда загружаешь 50 нп...

Ты перепутал тёплое с мягким в данном случае. Термин "выключенная коллизия" - это довольно обширное понятие. В условном физиксе (и хаосе) все типы физическим взаимодействий делятся на 2 категории - симуляция и запросы. Симуляция - это то что тебя условно волнует каждый физический тик, потому что в зависимости от сложности и конфигурации сцены велика вероятность, что твои объекты в неё попадут и нагрузка действительно возрастёт. Запросы (queries) - это то, что тебя тоже волнует практически каждый тик, но с ними сложнее. Расходы на них повышаются тогда, когда кто-то начинает опрашивать твою физическую сцену, например через трейсы, оверлпапы и т.д. и т.п. Но если ты чётко контролируешь где, когда и что запрашивается, то стрельнуть комплекс трейсом в тримеш персонажа обычно никакой проблемы нет.

Alexandr
Дорого и очень дорого - это когда загружаешь 50 нп...

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

Alexandr- Автор вопроса
Aleksei Gagarin
Ты перепутал тёплое с мягким в данном случае. Терм...

ну вот смотри есть базовый вообще проект, чтобы точно ничего не отвлекало. В нём 50 чарактеров для наглядности. В первом случае включен только query и фпс как мы видим 45. Если выключено всё, то фпс 66. Разница как по мне велика. Значит query тоже ест не мало даже на простое?

Alexandr
screenshot ну вот смотри есть базовый вообще проект, чтобы то...

Что-то у тебя маленький фпс для 50 персонажей. Что за «физика включена» у тебя, конкретно? Профилировать вообще-то надо такие вещи, хотя бы stat game и stat physics + query для начала. Там будет видно, что происходит. Может, просто настройки какие-то неправильные включены.

Alexandr- Автор вопроса
Михаил Никонов
Что-то у тебя маленький фпс для 50 персонажей. Что...

Это просто демо проект для примера, чтобы как раз таки ничего лишнее не отвлекало. Про физику не понял, она наоборот отключена.

Alexandr
Это просто демо проект для примера, чтобы как раз ...

Ок. Ты уверен, что у тебя не из-за рендеринга просаживается фпс? Может, манекены без ЛОДов? На скринах видно, что физика у тебя вся потребляет 0.53ms. Немного тратит char movement (он тоже делает query периодически), в пределах нормы. Куда девается остальное время? И, кстати, сделай еще stat PhysicsQuery (или как там правильно), чтобы точно знать сколько занимают query.

Alexandr- Автор вопроса
Михаил Никонов
Ок. Ты уверен, что у тебя не из-за рендеринга прос...

Лоды есть, я пробовал даже 1 треугольник оставлять в лодах вообще для сравнения - ну прирост фпс конечно есть логичный, но буквально кадра 3-5. Пробовал в лодах удалять кости - тоже ерунда. из физики только вот это нашёл (

Alexandr
Лоды есть, я пробовал даже 1 треугольник оставлять...

Кости непричем. Посмотри stat unitgraph и постарайся понять, на чем все-таки просаживается фпс - на рендеринге (gpu, drawcalls) или на игре (game)? Если на игре, то, может, у тебя AI очень прожорливый (stat ai)? Или анимация (stat anim)? Звук (врядли конечно)? Или у тебя просто комп очень медленный?

а с женского аккаунта бы сработало)

Alexandr- Автор вопроса

Вообще базовая сцена, без ии, стоковые анимации, ничего нет. Вот прям вообще ничего, ни звуков. Как раз для теста её создал. комп Rysen 5500, Geforce 1650. Вроде должно справляться.

Alexandr
Вообще базовая сцена, без ии, стоковые анимации, н...

Загадочно. Ты вроде на физику грешил? Что там могло быть криминального в физике? Симуляция какая-то дорогая прямо во основном физикс ассете персонажа? Вроде больше ничем не просадить фпс настолько.

GROUPER
🫡 тогда меня помянем...

Сочуствую, бро, но не знаю, что посоветовать. Я только в Анриле шарю...

Alexandr- Автор вопроса
Михаил Никонов
Загадочно. Ты вроде на физику грешил? Что там могл...

Вот и я не понимаю. 3й день сижу, уже до кастылей дошёл в виде отключения коллизий на меше и создания примитивов. Решил спросить здесь) Когда я отрубаю коллизии на скелете то фпс вырастает до 80-90 на той же сцене. Проект повторюсь базовый только создал для теста, никакой логики вообще нет.

Alexandr
вот ))

Может, тут анимация дорогая? Вроде теперь по умолчанию манекен какой-то усложненный с кучей костей и наворотами.

Alexandr
screenshot ну вот смотри есть базовый вообще проект, чтобы то...

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

Alexandr- Автор вопроса
Aleksei Gagarin
Query, как я и говорил, тоже влияет, потому что те...

Оверлапов у меня на меше нет (если я правильно понял о чём вы). Используется только query. Пробовал ставить полную коллизию (query and physics) фпс такой же, что и без физики 1 в 1. Без аним БП разница конечно есть в 10 фпс (50 вместо 40 при 50 чарактерах). Но с отключённой коллизией прирост до 80 фпс. Подскажите как можно упростить стандартный физ ассет и имеет ли это смысл?

Alexandr
Вот и я не понимаю. 3й день сижу, уже до кастылей ...

Что за коллизии ты вырубаешь, конкретно? Может, это что-то, что и не нужно по логике?

Alexandr- Автор вопроса

Да

Alexandr
Да

Теперь ясно. На скриншоте PhysicsAsset выглядит адекватно - экономно и по делу. Обычно в большинстве жанров (в стрелялках, например) QueryOnly включен у персонажей. Иначе как ловить попадания в персонажа? Обвешать капсулями вместо PhysicsAsset - не вариант, это немного дороже по производительности при той же функциональности.

Alexandr
screenshot Оверлапов у меня на меше нет (если я правильно пон...

Можно и нужно, если это требуется для твоих целей. Просто проведи эксперимент - снеси у этого ассета всё, кроме каких-нибудь 5 объектов и посмотри на результат

Alexandr- Автор вопроса
Aleksei Gagarin
Можно и нужно, если это требуется для твоих целей....

Кстати говоря прирост очень ощутимый. Тогда я просто упрощу физ ассет. Теперь я наконец-то понял) Спасибо вам ребят!

Alexandr
Кстати говоря прирост очень ощутимый. Тогда я прос...

Вот о том и речь :) К сожалению, бесплатно ничего сделать нельзя, но можно попытаться правильно использовать имеющиеся возможности

Alexandr- Автор вопроса
Aleksei Gagarin
Вот о том и речь :) К сожалению, бесплатно ничего ...

Спасибо) просто не сразу понял о чём речь)

Похожие вопросы

Обсуждают сегодня

Коллеги, я тут для личных нужд пошел ставить MQTT сервер, пощупал mosquitto, но ужаснулся отсутствию такой банальности, как HTTP API для посмотреть список топиков. А тут что,...
Maksim Lapshin
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Вопрос на перед, на следующую пятницу. Сколько строк кода можно вешать на одного программиста, понятно что если проект хорошо написан то можно и миллион. Но есть же где то пре...
AlekseyK Kluchnikov
31
Немного оффтопа: а кто на чем сидит для осдева в плане ide/редактора? Последнее время сидел на vscode, но я его прям не могу нормально воспринимать, перешел на сlion, но меня...
Evg Resh
29
Как думаете через какой сервис они верифицируют?
inc.
5
Добрый день! Подскажите, каким сборщиком фронта для OctoberCMS кто пользуется? Я имею ввиду сборщики, с которыми можно работать по стандартной схеме директорий октября. Я испо...
Николай Афанасенко
2
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
На чём в основном щас пишут мини апы? Vuejs?
Goot evening Not everyone
6
Вопрос: Здравствуйте! У меня возникла проблема с использованием плагина Mall в OctoberCMS. Я использую все файлы и компоненты в их исходном виде, без изменений. Однако на стр...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
8
Карта сайта