Create Dynamic Material Instance In Editor

While trying to use the new CallInEditor functionality with a custom event loading in a saved mesh, I have been trying to hook up blueprint nodes to set up materials for the mesh being loaded in. I have determined that “Create Dynamic Material Instance” fails when I try to create and set up the parameters and apply it to my mesh. No errors are thrown or anything, the material simply doesn’t get set to the instance that should have been created.

Is this a case where a flag can be set somewhere and allow this kind of dynamic instantiation in the editor without having to simulate?


Hi ,

Can you post your setup of how you have gone about calling the Create Dynamic Material Instance node? If we can see what you are currently attempting to do we may be able to assist you further. Thank you!

It’s fairly straightforward, I made a custom event with CallInEditor checked so it can be fired, and the event simply creates a dynamic material instance and sets it for the actor.


This material is then applied on all the dynamic meshes that would normally be constructed at runtime, but are instead instantiated after the “CreateDynamicMaterialInstance” function in this case.

This is what it looks like after calling it, i.e. it looks like the ArMat variable dosen’t have a material applied to it:


though when hovering over it in blueprint the tooltip says this: