How to Make Animated Lava in Unreal 4

By Zac Jackson

So you’re working on recreating the fiery pits of hell but you are not sure how to make the basic component of hell, lava. Not to worry! We have a tutorial on how to make your own lava in Unreal 4! Creating lava is a fairly easy and straightforward process. We can use this same process to create flowing rivers, waterfalls and more! Let’s get started.


Step 1: Create a new 3rd person project, make sure that use the starter content.


Step 2: Right click in the content browser (bottom of the screen). Click “material”, name it whatever you like. Once created, double-click on your newly made material and open it.



Step 3: Now you should be in the material editor. Right-click anywhere and type in “Texture Sample”, and then choose your lava texture. Alternatively, you can drag and drop the texture you want to use from the content browser.



Step 4: Click on the newly created texture sample and look to the left side of the screen. Under Material Expression Texture Base, there is an option to choose a texture, click on this and choose your lava texture. Alternatively the starter content we opted in for that the beginning has a lava texture named “T_Fire_Tiled_D”.



Step 5: Next, right-click anywhere in the material editor again, and type in “Panner” and add it to our material. Next to the word “Coordinate” on the panner, is a little hole with a white ring around it. Click on that hole, and then click on the “UVs” hole on the texture sample, this will connect them together.



Step 6: Add another node by right-clicking again, this time add “TextureCoordinate”. Connect this node, to the panner node, specifically the hole next to “Coordinate”.



Step 7: Drag and select all nodes at once, then hit CTRL + W on your keyboard. This will make a copy of these nodes.



Step 8: Click on the texture sample you just created, and change the texture to “Basalt_N” under its Material Expression Texture Base.



Step 9: Right click to the right of your textures and add an “Add” node. Connect the lava texture to the “B” of the add node, make sure you connect it from the bottom white whole on the texture. Then, do the same for the Basalt_NM” texture, except connect its red hole, to the “A” of the add node.



Step 10: Right click to the right of the add node, then search and create a “Multiply” node. Connect the Add node to the Multiply node. Next, connect the Lava texture to B on the multiply node. Connect the Multiply node to the “Emissive Color”, Connect the Basalt_N texture to Normal as well.



Step 11: Now we need to set the values of the panners we added earlier, this is going to make our lava move! Click on the first panner, and under “Material Expression Panner” on the left, change the speed of X to 0.01. Do the same thing, for the second panner.



Step 12: Now, right click to the left of the base of our material, and add two “constant” nodes. Connect one constant to Metallic, and the other to Roughness. Change the Material Expression Constant Value of the constant connected to the metallic to 0.3. Change the value for the second constant connected to the Roughness to 0.2.



Hit “Apply at the top of the material screen and save.



Step 13: Now, in the content browser window, add a floor static mesh to our scene. You can search for this in the content browser. Once that’s been added with can drag and drop our material from the content browser to the floor static mesh.







You should now see a square with lava flowing over it! Congrats! You’ve created lava. You can move this around and put it in pockets you’ve dug into your landscape in order to make it look more realistic. you could take this same material, copy it, and change the texture from lava to water to create flowing water. Change the Panner parameters to make it flow faster / slower. If you need help with this tutorial feel free to comment below!


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.