Implemented a multi-threaded build system. It has a master thread that runs in the background and manages multiple worker threads (e.g. 8 worker threads in a quad core CPU). When tasks are added to the queue system (e.g. a task to build a patch) it gets assigned to the next free thread. Each task has a priority, and the next free thread picks up the task with the highest priority. This is useful to first start building the landscape patches closer to the player / editor level viewport
The build system can run continuously in the background and can be used for infinite scrolling, by adding new patch build request as the player moves in the map