Patching Slate shaders

To render text as efficiently as possible while giving us the data required to pull of certain text effects Expressive Text needs to patch the original Slate shaders on order to route extra information into the text materials.
ℹ️
The specific shaders we patch are the following:<EngineDirectory>/Engine/Shaders/Private/SlateVertexShader.usf <EngineDirectory>/Engine/Shaders/Private/SlateElementPixelShader.usf
 
The changes our patch introduces are specific to font rendering and should not produce any side effect for rendering of other UI elements. If you suspect something has gone wrong with our shader patch, try Reverting the Slate patch shaders to check if it fixes it and please let us know if that’s the case!

Launching Expressive Text for the first time

When launching Unreal Engine with ExpressiveText enabled for the first time, users will get message prompt asking for permission to patch. After accepting you’ll have to restart the editor.
 
After updating ExpressiveText to a newer version, users might be prompted to patch the shaders once again if there are any shader patch improvements on that update

Reverting the Slate patch shaders

If by any chance you need to revert the slate shader patch, you can do so by accessing the
🛠️
Plugin settings
and ticking the Revert Shader Patch option:
notion image
 
Or you can run the following command on the console: ExpressiveText.RevertSlateShadersPatch

Muting the patch shaders prompts

There might be some cases where you wouldn’t want to patch slate shaders, like test only machines or if you’re planning on using a smaller set on ExpressiveText’s features, you are able to toggle off the patch prompts through the
🛠️
Plugin settings
notion image
⚠️
Not patching the shaders will result in some material effects and animation playing incorrectly or not showing at all.