-
Notifications
You must be signed in to change notification settings - Fork 20
Don't pvs cull entities for roaming spectators #1604
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Don't pvs cull entities for roaming spectators #1604
Conversation
|
Can't say I'm gung ho about this idea, I guess its not so bad if its applied specifically to roaming spectators but even then it feels a bit heavy handed for the problem you're trying to solve I'd consider culling by distance in this state or limiting it to certain entity types that are gameplay critical. Could be worth consulting a source engine wizard on what the real impact would be |
|
toggling the feature on and off or moving from a valid skybox area to outside a valid skybox area with it on shows a spike in the netgraph as all the entities that previously weren't being updated suddenly are, but that only happens during this transition, outside of which most of these entities don't seem to be generating any extra network traffic, unless they are being interacted with somehow, so I think the network bandwidth cost of this feature is very low, and any entities that are being interacted with that are generating extra network traffic we want to see as spectators anyway. There is a non-insignificant fps cost associated with drawing all these extra entities, any entities that have a fade distance will fade out even if they are being transmitted. I could add a client side convar that's in the player string so the server can selectively network all these entities to players who opt in. I could also calculate the distance from each entity to the receiving player and have a "network fade distance" of sorts, but I don't know if that's a good idea. |
|
In tournaments we've been using a plugin that does this to make for a better spectator experience. I think it's fine as long as it's limited to spectators. Maybe it can be limited to a certain distance in pubs, or when number of players goes above 16 or so. |
|
I think the only issue is the framerate, the entities that weren't networked before and are networked now really don't seem to be generating any substantial extra network traffic, so I think a client side toggle for the effect should suffice. If people think placing the client side convar in the server dll is iffy I can move it somewhere else, it does mean the server can see the convar too even if it doesn't do anything server side |

Description
No idea how much extra network strain this will cause, but it does improve the viewing experience from a birds eye view so I would like to test it. While the cost of this feature isn't yet known I've added a convar sv_neo_pvs_cull_roaming_observers for toggling it, but I think it would be better if this was either permanently on or removed down the line.
Toolchain
Linked Issues