Distributed Architecture for Procedural Terrain Generation in Video Games
Procedural generation is often used to create maps and levels in video games in real-time as opposed to loading designer made levels from file. A single player game on a single machine can easily produce the game world by itself. However in a multiplayer game the additional players will also need the game world generated for them. The host machine will need to be capable of generating the game world for all active players by itself which leads to limitations on the number of players that can be playing at once. The goal of this thesis was to understand the relationship between procedural content generation and the distribution of game processes. By distributing content generation to the client machines, it could lighten the load on the host machine negating performance loss from additional clients. Tests were run comparing the time taken when distributing verses not distributing procedural generation requests to the clients. The test showed a significant improvement in generation speed when having client nodes aid the server, especially when the host had a long queue of content needing to be generated.