How to call Materials or Material Instances in Blueprints?

Layers might be for you:

BTW, it’s not a blueprint, I used to get them confused also. Blueprint is the code behind the blueprint asset type. The code in a material is just called the ‘material graph’.

How can I address/call a Material and/or Material Instance within a Blueprint, e.g. the Blueprint of another Material?


I am currently playing around with an existing landscape material which uses a layer blend node to combine four material functions and then later adds more functions until the final attributes are complete. Now I wanted to add more materials (into the layer blend), but instead of using functions, I want to add existing materials/material instances. I thought this would be pretty straight forward, but it seems to be more complicated than I anticipated…
(the material functions all output the result of a MakeMaterialAttributes node)

Thank you!

So as far as I understand, there is no possibility, currently?

In the Content Browser, create a new Material Function and copy/paste all your Material Function nodes into it.

This might work for normal workflows, but for working with existing materials, this is a bit counter productive… :smiley:

I haven’t read the whole thing, but it seems close…

Just in case anyone else has the same question, I try to give the answer I concluded to:

Apparently, this is not possible. There seems to be no wrapper to get a material or material instance in a blueprint. Basically it seems that you need to copy the entire blueprint of the original material and set all parameters as you want (or as they were in a material instance based on this material). The only “solution” would be to create a material function first and then use this function within the original blueprint. But that only helps when you want to use it both as a function and as a blueprint/blueprint instance in another location.

If anyone comes up with a better / more correct answer, please feel free to let me know, thank you! :slight_smile:

1 Like