Hey James,
Just to follow up, we’re assessing if the overhead of setting up Mass is worth the performance gains, if we only end up with 200 entities max.
We want the entities to have the same gameplay capabilities as a typical character:
-Capsule Collision with gravity, sliding and typical character physics.
-GAS Ability Sys Component
-Nav Mesh path following
-StateTree AI
We’re implementing our own nav mesh path following through Mass, but to have gravity and capsule/char physics, we’re relying on a MovementSync trait in both directions, which requires the actor puppet to be a Character with a CharacterMovementComponent.
At this point, we’re bypassing the whole point of Mass, especially if we’re restricting ourselves to the GameThread in the movement updates, and we would only be using Mass for path following and State Tree at this point.
We can try and port a lot of the movement physics from the Char Move Comp so that we could hopefully process them all in parallel, but this seems like it might be negligible for 200 entities, especially if the mass process “graph” has some performance overhead.
It would be great to hear from you or the team, if you predict that we won’t be getting much benefiting in porting a lot of the ACharacter/CMC capabilities, when we’re not expecting 1000s of entities.
Cheers,
Ben.