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

Ability to do per-viewport, customizable LoD in 3D #7786

Closed
Zylann opened this issue Feb 12, 2017 · 1 comment
Closed

Ability to do per-viewport, customizable LoD in 3D #7786

Zylann opened this issue Feb 12, 2017 · 1 comment

Comments

@Zylann
Copy link
Contributor

Zylann commented Feb 12, 2017

As far as I understand, level of detail (LoD) in Godot is currently achieved by using an existing feature named draw range in GeometryInstance, and having multiple instances of the same object at different ranges.

This is fine for local objects, but it becomes nasty when it comes to lodding a terrain, or a forest (anything not "local" or numerous).
Heightmaps or voxel geometry for example require to be split in chunks, and splits are bigger or smaller depending on their LoD level. In addition to that, their boundaries have to be recalculated with different geometry everytime the LoD is changing, and this for every viewport in the same World. It's still involves turning meshes on and off, somehow, but relying only on just draw range is impossible, it would need some more custom logic.

Advanced lodding techniques involve collapsing vertices gradually, which is also completely different from draw range. And in case Godot won't support this natively, there should be room in the API to be able to implement it as a module.

So the proposal here is as the title says: it would be great if 3.0 had the API possibility of having custom lodding that is not only based on a fixed draw range algorithm (could also be related to #6375 which is about hysteresis)

@Calinou
Copy link
Member

Calinou commented Apr 29, 2020

Closing in favor of godotengine/godot-proposals#692, as feature proposals are now tracked on the Godot proposals repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants