Unreal Engine 5.4.4 custom shading model not appearing in list of shading models

I am attempting to implement a custom shading model into a custom fork of Unreal Engine 5.4.4. I am following various articles and documentation on this, but most of it seems to be for older versions of the engine.

So far, I am working on getting the shading model appearing in the material editor, but 5.4.4 seems to be fighting against me, and it simply does not appear.

I have tested the same engine modifications on 5.1.0 and the shading model appears and is usable.

  • The engine modifications are as follows:
    in EngineTypes.h
  • Add value to enum EMaterialShadingModel
    in MaterialShader.cpp
  • Implement new enum value at GetShadingModelString
  • Add the model to the else if statement in UpdateMaterialShaderCompilingStats
    in ShaderMaterial.h
  • Add uint8 value to FShaderMaterialPropertyDefines
    in MaterialExpressionShadingModel.h
  • Add enum value from EngineTypes.h to UProperty metadata of ShadingModel

Is there something between 5.1.0 and 5.4.4 that changed the way shading models were set up? If so, what else needs to be added? Is it because there is no actual HLSL connected to the model and that makes 5.4.4 ignore it?

I have tried to CRTL+F through the engine code to find instances of hard-coded shading models and also had no luck. Is there something I’m missing?

Thanks, any help is appreciated!

Have determined the enum EMaterialShadingModel in EngineTypes.h is simply the only change that adds the shading model to the material editor, at least, in 5.1.0

Have determined this is not any different in 5.4.4.
Have gotten it working on a fork of UE 5.4.4 that is not connected to source control.
It seems there is some issue with the way the source controlled fork is compiling.

It seems that rather than it being an issue with the way it was compiling, it’s an issue with older projects not “realizing” the changes??
I don’t see how anything in a project would effect engine features or hard-coded engine mechanics, but that’s how it seems.

The changes to shading models appeared after deleting my project’s Intermediate and Binary folders and recompiling.

Make sure both Unreal Engine and the project are compiling correctly, then fully refresh the project by deleting Intermediate and Binary, regenerating project files, and recompiling.