Please sign in to comment.
LosHandler: speedup + threading
A few numbers of a 1min 400 fighter testcase: time spend in LosHandler: 20sec (before this commit) -> 15sec (singlethreaded) -> 8sec (threaded with a quadcore) What has been done: * decouple unit update from LosInstance update * optimize LosInstance update (when an instance is removed from an unit and added to another in the same gameframe, then the losmap doesn't need to get updated, etc.) * increased cache again * use boost::unordered_multimap instead of custom hash array * Run Length Enode `squares` map of SLosInstance to reduce memory consumption a lot * threaded LosTypes updating (Radar, LoS, AirLoS, ... are updated in parallel) * threaded terrain raycasting
- Loading branch information...
Showing with 492 additions and 217 deletions.
Oops, something went wrong.