My understanding on how client/server chunk loading currently works is as follows. When a player connects to a server, and the server's set to render 64 chunks around the player, the player will be sent every one of those 64² chunks whether they like it or not, even if their render distance is lower than that. That is bad for the server, as an unnecessary amount of chunks are being rendered, and it's bad for the client, as they're unnecessarily swamped with packets.
What should happen instead, is that when a player connects to a server, the server queries the player's render distance, compares the player's render distance with the server's render distance, and whichever is smaller, that's how many chunks the server loads, and that's how many chunks are sent to the client. Whenever the player updates their render distance, the client would share this with the server, and chunks load or unload accordingly. No unnecessary chunks are being loaded by the server, and the client is only getting as many chunks as they request.
Please sign in to leave a comment.
1 Comments