Провел стресс-тест своей ballistic system в UE5.
С примерно одинаковыми затратами получилось обработать:
• 10к ProjectileMovementComponent
• 33к ballistic units в кастомной системе
ProjectileMovementComponent начинает упираться не столько в саму баллистику, сколько в overhead движка:
Tick на каждый projectile
UObject/Component система
обновление transform’ов
внутренние MoveComponent вызовы
огромный объем мелких операций на GameThread
В итоге CPU тратит кучу времени просто на обслуживание объектов.
В моей ballistic system вся симуляция идет централизованно:
без отдельного Tick на каждый projectile
с parallel update
async trace processing
batched simulation
За счет этого получилось спокойно обработать 33k ballistic units при играбельном FPS.
Процессор: Intel Core I5 12400F
Post #110
955


- ❤ 3
- 😈 1