bevy icon indicating copy to clipboard operation
bevy copied to clipboard

Mesh LOD Support

Open james7132 opened this issue 3 years ago • 4 comments

What problem does this solve or what need does it fill?

To reduce the amount of geometry that needs to be rendered in any given frame, it's common to have multiple scaled versions of a mesh that are used at certain distances from the camera.

What solution would you like?

A MeshLevelOfDetail component or something similar that will contains multiple Handle<Mesh>s that are either replace the handle in the component slot or changes how the mesh extraction system works depending on how close to a camera it is.

What alternative(s) have you considered?

Manually doing this.

Additional context

GLTF has no support for LODs at the current moment. Some ideas on how to best support this on the asset loading side might be needed.

james7132 avatar Dec 06 '22 06:12 james7132

I think it would be wise to look at Unreal's Nanite LOD system for inspiration.

bonsairobo avatar Mar 20 '23 06:03 bonsairobo

I think it would be wise to look at Unreal's Nanite LOD system for inspiration.

I would throw-in following deep dive into the Nanite as reference for people planing to explore the topic.

Nanite deepdive article

EmiOnGit avatar Aug 26 '23 15:08 EmiOnGit

Shouldn't this be closed as HLODs has already been merged?

Affinator avatar Sep 02 '24 07:09 Affinator

Seems like this should be kept open for now since the HLOD pr (#12916) states the following:

This feature differs from proper mesh LODs, which can be implemented later.

jobpaardekooper avatar Dec 03 '24 23:12 jobpaardekooper