Gaps on mesh-deformed model when over a specific stud count on the Z-Axis

Hello Roblox team,

we are currently working on a roleplaying game with custom mesh-deformed player models. These are then cut to allow for various customization and coloring. We noticed that, around a month ago, the model suddenly started to show gaps that hadn’t been visible before or showed up in Blender. Old versions of the Baseplate were also affected. After trying different things, we noticed that this behavior seems to be related to an engine bug: if the model is anywhere above 1.000 studs or -1.000 studs on the map on the Z-axis, it starts to stretch apart further and further. Our map is very large and detailed, with about 5.000 studs in total. This does not happen on the X or Y axis. Provided are screenshots at the end of the post.

Here are some things we tried and investigated:

Things that didn’t fix it:

  • Adding a humanoid doesn’t work
  • Running the game doesn’t work
  • Change render fidelity doesn’t work
  • Changing the model to streaming mesh doesn’t work
  • Double-sided doesn’t work

Additional information:

  • The X-axis works perfectly fine until over 10.000 or under -10.000
  • The same holds true for the Y-axis
  • Weight paint has been checked multiple times (and it wouldn’t make sense if the weight is working in the given range, but outside it doesn’t)
  • Merging two separated meshes in Blender fixes it, but separating it doesn’t work (separation is required for our experience)

As stated above, our map is 4.500 in size both x and z (5.000 with the upcoming expansion), so we have to rely on it being rendered correctly within the range.
It worked perfectly fine before December and it changed all of a sudden, we first thought it was a weight paint bug, but it seems an update has changed something and no one seems to have posted this issue (we are aware our project is a lot bigger than most games on Roblox currently).

Thank you for your time!

Model over 1.000 or -1.000 on the Z-Axis:

Model within the 1.000 and -1.000 Z-Axis:

Model at the origin point of the map:

Model outside of the aforementioned range:

Expected behavior

Assuming I understood correctly, this is a normal thing in 3D engines (though it varies a little bit).
It’s called floating-point errors, which happens in numbers with decimals. This effect continually gets worse the further that numbers get from 0, in both directions.
Essentially the numbers lose precision the bigger they get

If you move the meshes out much further, you should see a more severe effect.
Here’s a place that displays this:

I apologize If this is not the issue you are describing

Not exactly. If this were the issue, then all directions would be affected equally, but we noticed it happening on the Z-axis much earlier (see numbers above). So something is definitely off with the Z-axis.

It could just be that precision issues on the Z axis are more noticable but I may be wrong

You need to attach a reproduction file, screenshots aren’t going to be as helpful as figuring out why the bug occurs, compared to having the mesh and the engineers being able to see it themselves in Studio.

You can DM the Private Attachments group with a link back to this Bug Report, and add a link to your DM in this Report. Only Staff will be able to view the attachments you sent in your DM.

2 Likes

Hey, thanks for posting your problem. Could you provide the placefile and/or mesh for reproducing the problem?

I’ve sent a place file via the Private Attachments with a link back to this post yesterday. Has it gotten lost?

Could you send a link to that DM?

Never mind, I think I found it: https://devforum.roblox.com/t/engine-bug-on-mesh-deformed-models-cuts-opening-depending-on-z-axis-on-the-map/3440955

Yes, that’s the one! I tried uploading the blend and fbx, but the site gave me errors upon uploading, even after trying 10 times.