Changing the material through blueprint
Hey! I made a blueprint which was suggested me in my previous question: https://answers.unrealengine.com/questions/723111/material-changing-from-one-created-to-normal-textu.html
Now I just wanted to ask how to implement a timeline there, to make the swap between those two materials more smooth?
asked Feb 02 '18 at 05:30 PM in Blueprint Scripting
It's pretty simple if you use dynamic material instance.
1.Create One material
2.Add both of your textures between which you want to change over time
3.Add Lerp node and connect it's alpha to scalar parameter, name scalar parameter since it will be the handle to change between two textures. Here's simple example
4.Now in construction script of actor create this nodes
5.Now in event graph add this nodes.
6.Add float track to your timeline so that in 3 seconds it will change float value from 0 to 1.
thus whenever you press T, or it at any event's it will change material smoothly since we feed slider value to scalar parameter over 3 seconds.
answered Feb 02 '18 at 06:15 PM
Okay, I tried to do that. But the problem is:
I have two materials, one of them is holographic one which connects only with Emissive and Opacity in this material window. The second one is a compicated texture with normal map etc., both texures comes from Unreal Marketplace, so they have loads of stuff going on. And this second material (texture) goes to all of the rest.
Somebody showed me this method, but only if those two materials shared those plug-ins (Like for example Base Colour), so then I could really do lerp and it was alright. But in this case I don't know what to do.
How to use this method in this case?
answered Feb 02 '18 at 08:37 PM
since both of your materials have different blend mode unfortunately right now you cant blend between them
But as i know new feature of 4.19 will be material layers, so i think with material layers it can be done.
answered Feb 02 '18 at 11:17 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here