I’ve created a surface material that pulsates just fine in the material editor - but when I apply it to an “Image Widget” in my UI, it’s completely static (basically; as if the Time-node in the material stopped updating, thus no longer “driving” the pulse). Besides that, the material seems to be drawn correctly.
Have I hooked it up wrong somehow in UMG?
Or do I perhaps need to drive the “pulse animation” via the UI Blueprint’s Graph somehow, perhaps?
Solution: Today I managed to solve it while fighting another issue, so I better share the solution in case someone else runs into something similar: Turns out, despite the preview was dynamic/animated in the UI editor, the material became static (as if the Time-node paused) during Play because I didn’t use a Material Instance in my UI!
While the (base) Material works fine in the 3D world by itself, it seems any such material being used in the UI/Slate as an “Image” needs to be a Material Instance. (Regardless if you actually have parameters exposed or not, but just to keep it dynamic!?)
Feature request: If this is really required by the engine, perhaps there should be a warning in the editor when a dynamic material is hooked into the UI as an “Image.” Either insist on Material Instances, or alert the user that nothing dynamic will work and that they will just see a static version of their material.