Material layers parameter animation

Hey there,

I set up a master material using the layered material approach as outlined by Ryan Manning here:

Unfortunately I only now noticed I can´t expose the material parameters for animation in the sequence, like I can with standard materials.
Is that a known limitation or do I need to expose something?

A little bump.
Why is there no information on this issue ANYWHERE on the internet…:frowning:

Can´t animate Material layer parameters…

I went back to Unreal4, just to make sure its not an UE5 issue, but its just the same.

So,
What I figured out now…

I can´t add any parameters to animate in the sequencer.

BUT.

If i replace the parameter value with a material parameter collection, I can then add this MPC to the sequencer and animate that, and that works.

But of course, that workflow is quite awkward. 1. I gotta go through every material, figure out which parameters might have to get animated and replace each and everyone with a material parameter collection. 2. I have to create a unique MPC for each parameter. Because otherwise, if I animate one, that is also used in another material, ALL instances of that parameter would get animated.

So, I just wanna ask one more time:

Is it a known restriction of material layers, that you can´t animate any of the parameters? It seems so incredibly dumb, that the best material layering system in Unreal should be that impaired, that i cannot be used to animate material parameters.

If I don´t get an answer, I´ll have to rebuild all my projects master materials as standard materials with a couple of blend options…

Hi lad! I had the same problem and couldn’t find any examples or complete information, only a small entry in 4.25 Release Notes:

New: Material Layer Improvements (Beta)
Material Layers have been updated with the ability for Blueprint functions to modify Material Layer parameters at runtime and improved behavior when propagating layer changes from a base material to derived ones.

I’m still pretty new to this engine, so i just start to messing things until i get it work like this:

As you can see, i use Dynamic Material Instance to change parameters values by setting them by Info. I did it not only in Event Graph, but in Сonstruction Script and it work just fine!

I hope I am not too late and you will succeed!

2 Likes

Hey man,

you for the reply, unfortunately I could not wait any longer and had to rebuild everything from scratch.
But I also don´t know blueprints yet (most likely never will), we are only working on linear content (for a TV show) so I only need to be able to animate the parameters in sequencer.

By now I´m guessing either noone is really using material layers yet or they just can´t be animated in sequencer yet, so hopefully a new release is going to have that functionality.

It was so nice and elegant not having to account for every possible blend mode and material type in one massive material…

Deam, what a shame! I don’t touch the Sequencer theme, so definitely can’t help in that area, can just wish a good luck :raised_hand:

Hey @Fortirus,
you so much for taking the time to explain how to change Layered Material parameters at runtime. Couldn’t find the info on the official documentation. So this is much appreciated! <3

1 Like

Glad it helps! I haven’t worked with this topic anymore, but I’ll be back soon for more practice.
So if I understand something else important/interesting, I will write here again :eyes:

1 Like

Any updates on this topic?
It will be lovely if Layer vector parameters could be animated in sequencer.
I am trying to crossfade two materials, I have the Blend Asset but cannot access it’s vector parameter in sequence.
I have tried with material parameter collection, as @Acolori_Medien suggested, but the crossfade is not smooth. I see stepping between 0-1 values.
Is there a way to fix this?
Thanks.

Hello there! I have not worked on this for a long time and the solution that I described turned out to be the last one for me. Surely some more convenient ones can be avalible, especially in the UE5, which, by the way, I switched to, but I don’t know and didn’t recearche anymore. But

I don’t know about the parameters, but you can use functions in it that will change them. Take a look:

1 Like

That is so cool!
you!

1 Like

Necroing my own thread, because it was the first one popping up when I tried searching for it…:slight_smile:

So, been working with our current master blend material for a while now and continuously improving and adding features and I´m now hoping there has been some progress on the initial issue (material parameters not being animateable in sequencer).

I HAVE actually gotten into blueprinting since, but its also not feasible for ALL our assets to live inside blueprints, just so the material parameters could be animated.

So, while our system overall works ok, there are a couple of issues with it:

  1. Reusability.
    Basically: Each time we want to reuse a blend material, we CAN just make a duplicate of the instance and then change stuff in the instance duplicate. However, in some cases, especially with more basic materials (instead of asset specific materials), it would be nice to just pop a layer into a new material, without having to recreate it from scratch.

  2. Consistency.
    Similar issue as in 1 is, that if we then recreate these materials from scratch or just change some parameters, we now need to keep track of these changes for these assets or other assets using a variation. If we would be able to simply rereference he origianal layer, it would be a lot easier to keep consistency across projects.

  3. Complexity.
    As I´ve said: I´m still continuously adding new features or improving existing features.
    This IS a VERY complete material, with 3 layers, normal AND triplanar mapping (that also works with skeletal meshes), about half a dozen different blend types for each layer, detail textures for everything, animatable textures and displacement and even switches for using SSS/subsurface or normal shading.
    And then all of these available across all 3 material layers makes it quite cumbersome to work with.
    I´ve made as much as I could into functions and there is probably even more room for improvement there, but still: Would be really cool if I could at least limit these updates to just ONE reusable material layer, instead of havingt to maintain layers A, B and C for every little change…

Also, at times, it might be nice to have simplified material layers, as long as I would also be able to combine them with their more complex counterparts.

All of these would massively profit from the material layer system and since I´ve already made every layer into functions, it wouldn´t even be so hard to rebuild for it.

But, once more, being able to animate every material parameter on a per instance basis would be a MUST for me to reconsider material layers.

So…

Any news on that?
Any cvar maybe thats hidden away to enable the ability to animate parameters?

Next time I have some space for RnD I´m gonna just check with the newest engine version, but would love some input.

Also…EVENTUALLY we also wanna switch to substrate, especially for being able to mix translucent materials with SSS (VERY important for medical animations, which is our bread and butter)…
SO…anybody know if THOSE are even compatible with material layers?