Полезное

Мы Вконтакте

Discord канал

#
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 67
Snake писал(а):
ммм... поворот одной башни на тике не может так просадить фпс...
просаживает ФПС именно исполнение SET WORLD ROTATION (Где TARGET = TURRET) с DELAY = 0 то есть когда она её поворачивает в сторону противника, а противник же еще и движется:) когда таких танков 5-6 всё ок, а вот когда замес в 50-60 танков на уровне вот тогда и садит.
Я подозреваю что даже с рандомным таймером всё равно с десяток танков одновременно начинают вращать башней что и садит ФПС... НО ведь иначе никак, если DELAY исполнения SET WORLD ROTATION будет чуть больше даже 0.1 то башня дерганными поворачиваться будет и меткость упадёт как таковая в ноль.

Коллизия везде SIMPLE причём упростил в самое не могу. Физика только на РУТ объекте, башня без физики. Во общем засада какая то выходит. Или отказываться от задуманного что уже реализовано, или я хз чё делать. Но с 15 фпс не повоюешь.
Аватара пользователя
Пользователь
Сообщения: 2319
SET WORLD ROTATION для 60 обьектов без колллизий тоже не должна просаживать ФПС...(по идее даже на тике) так что что-то еще его сжирает его.
профайлером надо проверить все это дело. скрин участка кода ответственого за это все?
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 67
Snake писал(а):
скрин участка кода ответственого за это все?
Вот и он
http://s1.uploadpics.ru/images/W1dlhEr057.jpg
http://s1.uploadpics.ru/images/-kPg3EHC5X.jpg

"Target position" даёт сама ESQ
Аватара пользователя
Пользователь
Сообщения: 2319
затрудняюсь что либо сказать, кроме как отказаться от ворлд тика ...очередной раз,
коллизии на башне включены, хоть и не генерируют хит-оверлпа ивентов,
реализации EQS перед не видно, если она правильно сделанна то логика вобще неправильно написанна, потому что EQS работает ассинхроноо, и получении результата вызывает диспатчер, соответственно "get world delta second" для интерполяции уже не подходит под логику EQS.
EQS хоть не каждый тик вызывается?
уверен что если провести тест с 60 коробками на чистовом проекте падения фпс значительного не будет...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 67
Snake писал(а):
уверен что если провести тест с 60 коробками на чистовом проекте падения фпс значительного не будет...
Так и есть.
Поворот башни это отдельный евент и он на тике (через проверку "есть ли цель) а EQS вызывается по необходимости и когда вызывается и даёт "цель есть" что даёт зеленый свет логике на тике и самому повороту башни.
Методом проверок выяснил что если вообще выключить коллизию башни и всех частей которые поворачиваются тиком SET WORLD ROTATION (SET RELATIVE ROTATION) то фпс не страдает вообще, что в итоге вызвало еще большее недоумение ведь колизия не КОМПЛЕКС а СИМПЛ стоит да и не супер детализирована, это получается надо "обклеить" башню элементами с колизией:))) ну если так тогда сделаю заодно и критические зоны поражения как говорится нет худа без добра.

Вот скрины с вызовом EQS
http://s1.uploadpics.ru/images/-J_HLII09m.jpg
http://s1.uploadpics.ru/images/WkIS8ULA5X.jpg

Вот СТРЕСС ТЕСТ (60 танков) как видно + прога записи -5-10 фпс то вроде полёт отличный https://www.youtube.com/watch?v=W_kzCu7 ... e=youtu.be

Спасибо тебе огромное что нацелил меня на колизию:) иначе бы я долго мучался:) в 5ый раз меня выручаешь! В титры игры впишу тебя однозначно:)
Аватара пользователя
Пользователь
Сообщения: 2319
Цитата:
вообще выключить коллизию башни и всех частей которые поворачиваются тиком SET WORLD ROTATION (SET RELATIVE ROTATION) то фпс не страдает вообще

собственно как я и предполагал...

зачем постоянно проверять EQS-ом вместе с таймером? нашел цель - дальше EQS не нужен, дальше система сопровождения цели - трейсим по цели пока не будет хита перекрытия, до этого момента цель видима.
поиск новых целей уже не приоритетная задача пока цель есть и новые можно вообще раз в 1-2 секунды проверять.
тоесть как цель найдена EQS с таймером нужно остановить, не нужно чтоб она продолжала часто сканить все.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 67
Snake писал(а):
тоесть как цель найдена EQS с таймером нужно остановить, не нужно чтоб она продолжала часто сканить все.

Блинн точно , ведь стопнуть его можно чтоб не грузил. Хотя я не заметил дропа фпс сильного но и лишняя нагрузка не нужна, спасибо.
Аватара пользователя
Пользователь
Сообщения: 2319
у подвижных обьектов лучше не делать "blockall", оно же проверяет каждый физический тик на пересечение со всем подряд зачем?
настроить каналы блокирования и в итоге проверка со всем миром превратится в проверку в пересечения нескольких обьектов
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 67
Snake писал(а):
у подвижных обьектов лучше не делать "blockall", оно же проверяет каждый физический тик на пересечение со всем подряд зачем?
настроить каналы блокирования и в итоге проверка со всем миром превратится в проверку в пересечения нескольких обьектов

я вот с колизией в принципе долго думал какую выбрать, делал и КАСТОМНУЮ хотя хз какая лучше конкретно для наземного юнита.
Аватара пользователя
Пользователь
Сообщения: 2319
физикс любит сферы коробки и капсули, конвексы для него уже дорого
важно - не проверять пересечение всего со всем, есть настраиваемые каналы по которым проверяется только те обьекты которые влияют на канал.
_________________
we need to go deeper


Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница