Thursday, February 22, 2018

3d - How can large terrains be represented in multiplayer games?


To give you a bit of context, I often try and imagine how big games are working, especially networked and multiplayer games. This is how I came to this question: how do big 3D multiplayer games load their 3D, predefined maps? (I am not talking of generated ones, such as in Minecraft, but defined maps that represent, for example, a kitchen).


The most viable hypothesis to me are:





  • Some basic map terrain is loaded in a .obj file (with just variations of height and of ground material), and then more data (like trees) is added according to another file, stored in a format like xml, which also contains paths to other obj files. This techniques therefore allows modifications of terrain, as well as something like serialization to send data to a new client joining (but it's really heavyweight and hard to implement). Finally, you can base player position on which tile they are, and make easier collision & al (for RTSs for example).




  • A map containing all data in a single .obj file is loaded by all clients, and they are just allowed to move inside it (is this the case in FPSs like Quake?)




But I think both of these techniques aren't optimized enough for commercial or public use. Do you have any idea of how can these games load their map data?




No comments:

Post a Comment

Simple past, Present perfect Past perfect

Can you tell me which form of the following sentences is the correct one please? Imagine two friends discussing the gym... I was in a good s...