ProBuilder generating (0,0,0) normals for vertices, causing black surface texture

I am modifying some meshes using ProBuilder, and once I ProBuilderize certain meshes:

  • Most triangles are as expected.
  • Some triangles have a black texture instead of the expected texture.
  • Some triangles have the black texture, but the face normals are backwards so it appears to be a mesh hole from the outside of the object.

The vertex normals for the faces in question are (0,0,0). If I call mesh.RecomputeNormals() directly on the Mesh object (not ProBuilderMesh) these normals are recalculated correctly and the black textures + holes disappear, replaced with the correct texture. However, the next time I do an operation that modifies normals in ProBuilder, they are computed incorrectly again and the holes/black texture reappears.

This is an asset store mesh that looks to have been created using AutoDesk 3DS Max.

Has anyone experienced or solved this issue before?

Black Texture

After recomputing normals directly on mesh ( you can see smoothing is lost):

Example of normals before/after recomputing manually:
Before
1750: (0, 0, 0)
1751: (0, 0, 0)
1752: (0, 0, 0)
1753: (0, 0, 0)
1754: (0, 0, 0)

After
1750: (-0.2095, -0.7022, 0.6805)
1751: (-0.1628, -0.7849, 0.5979)
1752: (-0.1628, -0.7849, 0.5979)
1753: (-0.1628, -0.7849, 0.5979)
1754: (0.3477, -0.5858, 0.7321)

It’s difficult to diagnose without looking at the mesh, but if the normals are being calculated with no magnitude I’d guess that there is something odd with the topology. Can you please file a bug report with this model attached and PM the ticket id?