Back to Search
What are the plans for culling in PES?

Okay, that's a good question. With our old system, we had this, it's called lifetime management, and it would arbitrarily remove entities once they hit a certain cap. And we realized that's not really great for play experience. For example, I think at the moment, players can only spawn up to three ships. If they spawn another ship, the old one gets removed. For persistent entity streaming, we actually revisit that problem. And we decided, okay, how can we make this a nicer for the player, but also be how can we make this actually work good for persistent streaming and also for server meshing, where maybe it doesn't make sense if if a player has five ships spawned and they're all separated in open space and streamed out, they don't really cost us performance. So why do we still need to arbitrarily limit that? And for that, we have the guys in Frankfurt developed a new system. It's called density management, and it operates on relative cost of an area. So the idea is that instead of just taking arbitrary numbers on objects, we look at areas and we look at the amount of items in that area. And we only start to remove items the moment the relative cost of that area becomes too high. So as long as you spawn your ships in different locations and they're all spread out, we will never touch them or remove them. However, if like now everyone goes to the same spot and you start spawning ships and spawning ships at the same location, that's when the system will find out, OK, now the performance goes down because our relative cost in that specific area goes too high. And then we will start deleting items, which also follows a certain rule set. So we will delete oldest items first. We will also have a relative priority on items. So a player ship, for example, is a very high priority item. So we would not delete a player ship versus a coffee cup, for example, would be the first item to go away. And then with that, we try to get the game to where it's not very invasive to you. So you don't just see stuff disappearing out of the air. Exactly like the approach we're taking is that most of this cleanup will happen during stream out. So if an area streams out, that's when the density management will make a first initial pass and will say, hey, in this area, we had 50 coffee cups and that's too much. So we start removing them. And then we only go into the more aggressive policies once it's really becoming maybe an area never streams out or whatever. All players decided, hey, I mean, I kind of expect that right once we go get PSL probably everyone will like, let's all go to Port Olisar and drop all our coffee mugs on the floor and keep doing that. That's what you guys will do anyways. So basically the system will take care of this, but it will be a smarter system. It's a smarter system than what we have right now.

Benoît: One thing to add to thedensity management too, is that it also has this concept of references. And so for example, if an entity, because this also covers NPC entities, right? So like AIs and whatever else. And so if a specific entity is actually being referenced by a mission, active mission or active player, for example, then there's a ref counting, a reference counting system that will prevent those from being actively reaped. So that, again, I think the goal with density management is really to make sure stuff doesn't pop out of your view and break your game experience. But we still need a density management system to prevent overloads. But that's the approach in general.

-
Open in pop-up
Open in new tab
Click to copy link to YouTube
|
Published on this date.2022-09-16
Save Card as Image
ID: 1426884a282422_dashboard_generated_id (Click to copy)
Perma link (Click to copy)
All Q&As from this episode