this post was submitted on 27 Apr 2024
312 points (97.6% liked)

Gaming

20006 readers
25 users here now

Sub for any gaming related content!

Rules:

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] huginn@feddit.it 3 points 6 months ago (1 children)

You constantly have to render people in when they can't be seen but will soon be seen. Which also means instead of keeping track of just locations the server needs to render the scene in sufficient detail as to determine sightlines.

Usually games just do this by sending info to clients of where everyone is and letting the clients render people in when the client determines that the sightline isn't interrupted.

Some games will just not send the positions until they're within a certain range of each other, but I'm a realistic game like tark you'd need several kilometers of info in case someone scoped in.

If you don't do this correctly it leads to characters popping into existence from thin air

[–] ShortN0te@lemmy.ml 1 points 6 months ago* (last edited 6 months ago) (1 children)

You could use things like ray tracing to determine if one player can be seen by another on the serverside and only send packages when they can see.

But to resource heavy to do that.

Edit: Thinking about it, you simply have to render the whole map with all players server side and based on that determine which players can see each other and based on that send the information to the clients.

[–] huginn@feddit.it 0 points 6 months ago (1 children)

You do see why that's a serious issue right? Before the Server did nothing more than maintain a list of x,y,z coordinates of player positions. Now it's rendering the entire game space and doing 3d calculations.

That's several orders of magnitude more complex and costly.

[–] ShortN0te@lemmy.ml 1 points 6 months ago (1 children)

That's exactly what i said.

Still no reason to put a root kit on the customers PC.

[–] huginn@feddit.it 0 points 6 months ago

There's no way in hell you'll ever get a game company to agree to that. You're talking 100x the expense of running a server at a minimum.