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:
- 1: No spam or advertising. This basically means no linking to your own content on blogs, YouTube, Twitch, etc.
- 2: No bigotry or gatekeeping. This should be obvious, but neither of those things will be tolerated. This goes for linked content too; if the site has some heavy "anti-woke" energy, you probably shouldn't be posting it here.
- 3: No untagged game spoilers. If the game was recently released or not released at all yet, use the Spoiler tag (the little ⚠️ button) in the body text, and avoid typing spoilers in the title. It should also be avoided to openly talk about major story spoilers, even in old games.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
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
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.
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.
That's exactly what i said.
Still no reason to put a root kit on the customers PC.
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.