Produces a 20% reduction in CPU usage while idling in the blue2 area.
Increases framerate of a 100x100x2 sized area from 2 FPS to 43 FPS. (A 1x1x2 sized area also gets 43 FPS so we're hitting a bottleneck somewhere else that's preventing us from hitting 60, but with this patch an arbitrarily-sized area should be perfectly capable of hitting 60 just fine.)
Lowlights
Right now, the first frame drawn upon startup draws all tiles, rather than just the visible ones. To fix this bug, we need to tell AreaManager what the viewport bounds will be. Do we only calculate the bounds after asking AreaManager to render? Is there some way we can move this calculation earlier?
AreaManager steals access to some private variables. Where this happens, code could stand to be improved.
Fixes #159.
Highlights
Lowlights