Description

The Max Deviation setting for a static mesh LOD is never used for Mesh Reduction. This results in incorrect values for automatically computed LOD distances, because the calculation uses the Max Deviation value, which is not set correctly. 

One thing that seemed to help was passing InSettings.MaxDeviation for the maxError parameter to the call to SimplifyMesh call in QuadraticMeshReduction.cpp's Reduce() function.

[Image Removed]

That seems to work better for when the max deviation is the default setting of zero, but for other settings the ScreenSize is still calculated wrong

Steps to Reproduce
  1. Open included project
  2. Notice StaticMesh /Game/TestMesh/TestMesh.TestMesh has automatically computed LOD distance, but the ScreenSize for LOD1 is greater than 1
  3. Set Percent Triangles to 1 for LOD1
  4. Set Max Deviation to something besides 0 for LOD1
  5. Hit Apply Changes
  6. Notice no mesh reduction happens, even though a Max Deviation setting is larger than 1

Have Comments or More Details?

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

3
Login to Vote

Won't Fix
ComponentUE - Graphics Features
Affects Versions4.18.34.19
CreatedFeb 1, 2018
ResolvedAug 18, 2021
UpdatedSep 19, 2021