Recent changes in the MeshReductionManagerModule::StartupModule() have introduced issues where it won't respect what reduction modules have been set in the config file. This is a big issue for plugins that implement the IMeshReduction and IMeshMerging interfaces since they won't be able to stay picked after the required restart of the editor after changing to them in the project settings.


In 5.1.x (and earlier), we got what modules to use for the different reduction interfaces directly from the config file. Now, in 5.2 (preview 2) this has been changed to get it from the UMeshSimplificationSettings class. From my investigations it looks like the class gets the correct values set in the config when it is created but then in PostInitProperties() it gets defaulted back to the default value for the console variable. This is because the console variable has not received the value from the config file yet.


There is also an issue where the default value for r.ProxyLODMeshReductionModule is set to a name that does not exist.

Steps to Reproduce

Properly testing this would require another reduction module such as simplygon, so it's not a trivial task. However, you can fake a module change to replicate what would occur


Change this entry in BaseEngine.ini from:





If it's working as intended, you should now see this in the log:

LogMeshReduction: Warning: Mesh reduction module (r.MeshReductionModule) set to "DUMMY_MESH_REDUCTION_MODULE" which doesn't exist.

Have Comments or More Details?

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

Login to Vote

ComponentUE - World Creation - Worldbuilding Tools
Affects Versions5.2
Target Fix5.4
Fix Commit26262887
Main Commit26260593
CreatedMay 4, 2023
ResolvedJun 17, 2023
UpdatedSep 26, 2023
View Jira Issue