As a Roblox developer, it is currently too hard to optimize meshes in large worlds/maps. Developers would definitely benefit from an LOD (level of detail) system for MeshParts which renders preset lower-poly meshes at different distances from the camera. As it stands now, this can be done in realtime using hacky code HOWEVER the performance drops considerably with lots of entities due to calculating magnitude per entity multiple times per second; which nulls the entire purpose.
If Roblox is were to address this issue, several developers would have the ability to drastically increase performance as the rendered poly counts would go down exponentially. This is a standard feature in almost every 3d game engine and should be added.
Here’s an example:
The further the camera is from the coffee mug, the less amount of polys should render. There is no reason to render 379 extra polys because you wouldn’t be able to tell the difference.
They mentioned CSG and MeshPart automatic LOD a while ago at RDC, so I think this is still something they’re going to be doing. I also like this idea but I think options on what has levels of detail like what changes and what doesn’t would be good. Adaptability is nice with a system like this.