Description

Some parts of the proxy mesh generation does not correctly handle empty sections.

FMeshMergeHelpers::ExtractSections() will remove empty section, but some other parts of the process will not, which creates a mapping discrepency.

Before making any changes, we need to have a good set of test meshes. Some of the cases that should be tested:

  • A mesh with multiple sections, but the last one should be empty (no triangles)
  • A mesh with multiple sections, but the first one should be empty
  • A mesh with an empty section in the middle

 

Obviously, the output mesh should contain no empty section.

Steps to Reproduce

Use the merge actor tool on an actor which uses a static mesh that has two sections. The last section should reference a material but should have no triangles.

Using the "Simplify" algorithm on that mesh should result in the following error:

 

=== Critical error: ===
Assertion failed: Remap.IsValidIndex(PolygonGroupID.GetValue()) [File:D:\build\++UE5\Sync\Engine\Source\Developer\MeshMergeUtilities\Private\MeshMergeUtilities.cpp] [Line: 1815]
Missing material bake output index entry for mesh(section)

 

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-189838 in the post.

3
Login to Vote

Unresolved
CreatedJun 28, 2023
UpdatedFeb 13, 2024