next up previous
: Cell-based Architectures : Possible Approaches for Achieving : Possible Approaches for Achieving


Broadcast Architectures

Some popular games including MiMaze [20], Halo [5], and most Real Time Strategy (RTS) games [1], have adopted the parallel simulation architecture, where each player in the game simulates the entire game world. Thus, all objects within this world are replicated everywhere and kept consistent using lock-step synchronization. The obvious disadvantages of this architecture are its requirement of broadcasting updates to every player, resulting in $ \O(\mathit{NumClients}^2)$ bandwidth scaling behavior, and its need for synchronization, limiting response time to the speed of the slowest client and the latency between the players. These deficiencies are tolerated in today's RTS games because individual games rarely involve more than 8 players and low update rates are generally tolerable.

One possible optimization would be to use some form of area-of-interest filtering such that players only broadcast their updates to other players in the same area. Resulting in only $ \O(\mathit{NumAoiClients}^2)$ bandwidth scaling. However, without a distributed service to discover other nearby players, such a design would need to rely on a central server to find each other. Such a server could become a bottleneck since it would need to receive position updates from and transmit area-of-interest matches to each client. The bandwidth demand scales linearly with the number of clients, much like the server in a client-server design.


next up previous
: Cell-based Architectures : Possible Approaches for Achieving : Possible Approaches for Achieving
Ashwin Bharambe 平成17年3月2日