Levels of Detail for Mesh Parts

This will be an awesome improvment for low-end/mobile users

Creation of new ones is disabled, but old ones still being rendered. If possible, you can reimport the mesh, otherwise the fix is scheduled to go out on Thursday.

6 Likes

I’m experiencing a bug where the LOD model is showing up for Meshparts with a RenderFidelity of Precise in two conditions:

  1. If the mesh is a descendant of the character (i.e. tools)
    or
  2. The mesh is a descendant of a ViewportFrame

in both of these cases, I am always getting a broken LOD model, regardless of distance from the character/camera, and regardless of the fact that LOD is not even enabled.

Please fix this. This is making all of the weapon models/viewport frame models in my game look broken.

You can DM me for a repro.

We’ve just enabled an update that might fix this, can you try it now?

7 Likes

Everything seems to be working correctly now!
Both for humanoids, and for ViewportFrames. No crashes.
Awesome work! :smiley:

1 Like

The first one was uploaded when the update was disabled, the second one was uploaded now. Looks like the collisions are fine now, but the lighting on that meshes is still broken (only on ShadowMap technology)


4 Likes

I have experienced this issue as well. The one on the left is the original mesh with correct shadowing, the one on the right is the “reupload” with the new LoD.

4 Likes

Thats weird. Thanks for reporting this guys, we’ll have a look.

1 Like

Looking good, everything seems to be fine for me now. Love how this makes low-end users experience great quality.

The performance is definitely better for low-end users…

It would be cool if users could decide which areas of the game are higher in quality… In Fortnite, they use different levels of detail, but whenever there are players within a certain area, that part of the map will render better so that you can see the environment around other players clearly.
Example:


While the picture above doesn’t provide the best example of this idea, there are many examples in-game in which you can see highly detailed locations out in the distance due to enough players being located there…

The area circled in the red, and the area circled in the blue are about the same distance from the player, but the player built structure in the blue circle is rendered better because there is a player in that area…

It’s a little too early to make a Feature Request for this idea considering that Roblox is still working on bug fixes.

2 Likes

I haven’t checked to see if this property can be scripted or not, however if it can be you could change the RenderFidelity from automatic to precise for any structures close to another player.

2 Likes

RenderFidelity is not scriptable, but can be changed from a plugin.

Wouldn’t that make it a dead giveaway as to where players are located?

1 Like

Not necessarily - but I do see your point (if you are making a game that involves combat or something equivalent where stealth is a tactic). To fix this, you could set the tree meshes to auto-render (render quality based on proximity and the individual’s computer performance), and then set player-built structures to high-levels of detail regardless of proximity.

I mean to be honest (ignoring the current LoD bugs right now), there shouldn’t be a drastic amount of difference between high-level and lower-levels of detail - assuming that you aren’t staring up-close to the mesh. (If you disagree, please correct me :slight_smile:)

I’m glad of Mesh Parts have been updated. I had a serious problem with that of something was looking sometimes ugly or/and too realistic which was problem for me and now there is a solution on this. Also, rarely the Mesh Parts were deforming characters and now there’s a solution on these both glitches. Thank you! :heart_eyes:

Will this be applied to Roblox assets as well? (Bundles, Accessories, etc)

There is a major issue with this update and ViewportFrames. Firstly, the meshes have LoD enabled even if their render fidelity isn’t automatic, and in conjunction with being inside a ViewportFrame with a far camera, this issue happens when adding textures.

1 Like

Why was it decided to make the LoD based on the camera position and not its focus?
Since you aren’t really taking into account FoV and what is actually seen, tree models when zoomed in with my game’s sniper look really choppy:

But terrain LoD works great because it is dependent on the Focus

14 Likes

I couldn’t agree more with this post.

The fact is we have an API Variable, Camera.Focus whose objective is to set the area where rendering should be prioritised for the player. By not tying this feature into LoD, we’re having the amount of control we have over the player experience limited by the engine.

From the Developer Hub:

The Camera Focus is a CFrame that determines the area in 3D space the graphics engine will prioritize.

9 Likes

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.