Skip to content
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

Add option to allow high detail only near players #274

Open
StoneLabs opened this issue Dec 14, 2021 · 7 comments
Open

Add option to allow high detail only near players #274

StoneLabs opened this issue Dec 14, 2021 · 7 comments

Comments

@StoneLabs
Copy link

Is your feature request related to a problem? Please describe.
Not a problem. Just a feature request.

Describe the solution you'd like
Add an option to only load high-resolution terrain near players. At a certain distance from players, the terrain should be low-res. This would be nice for balancing on survival servers and preventing the map from being too OP.

The low-detail area could simply use the low-res terrain that is currently loaded before the full-res one. The server will in turn only send the high detail area if the location is near a player.

Example implementation
image

Thanks, Stone

@TBlueF
Copy link
Member

TBlueF commented Dec 14, 2021

preventing the map from being too OP

This is only feasible to be implemented client-side. Which means its easily (with little js knowledge) reversible for any client.
=> Players that really want to see the map further from their positions will be able to do so, just by putting a command in their browsers js-console..

With that in mind, is this feature still worth the effort? :)

@StoneLabs
Copy link
Author

Sure, but most people won't make the effort to bypass it. And I think (could be wrong ofc), it's not that complicated to implement.

I think it would be a great feature! Especially if you're only playing with a small group of friends like me. :)

@TBlueF
Copy link
Member

TBlueF commented Dec 14, 2021

It is quite expensive to implement..

There is currently quite a complicated system that makes sure that new map-tiles are loaded when the camera moves, in a circular pattern from in->out while still being somewhat responsive to rapid camera-movement changes..

Implementing this, means to repeat that process for each player-marker while still checking for the camera-position..
This introduces a lot of potential for bugs and tiles not being loaded where they should ^^'

@StoneLabs
Copy link
Author

StoneLabs commented Dec 14, 2021

I could be wrong, I haven't looked through the code. But wouldn't it suffice to simply abort the render of the high res chunk at the last stage if the distance from any player is less than the specified radius given by the server?

e/ the camera position-based loading can be kept. Meaning only loading high-res geometry around the camera (as it currently is) IF it is within player distance.

@TBlueF
Copy link
Member

TBlueF commented Dec 14, 2021

Yes, and then the player moves, and the tiles won't load where the player moved until you move the camera away and back again ^^

@StoneLabs
Copy link
Author

Mhm i see good point

@TBlueF
Copy link
Member

TBlueF commented Dec 14, 2021

So basically: i like the idea, but its complicated to do properly, so if we keep this issue open, it would be very low priority on the unfortunately quite big TODO-list :/

@TBlueF TBlueF added this to TODO in TODO / Idea board Jan 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Planned (unordered)
Development

No branches or pull requests

2 participants