Closed nrader95 closed 2 years ago
Sorry for the late reply, didn't get much free time the last weeks sadly. Did you mesure the actual impact? This just add two virtual calls (IParallelRunner.Run
and IPArallelRunnable.Run
) which should be pretty negligible next to the actual processing of all the entities.
No, i did not measure, at least not precisely. The game started to run a bit smoother after changes, tho.
So we encounteres synchronization lags in our single-threaded (!) systems. After i bit of reading through the source code of AEntitySetSystem, culprit seem to be this:
This triggers the use of runner when we don't need it.
Other systems that support runners seems to have this bug as well.