Sam Delfanti talked about his UE4 scene inspired by God of War: the use of Megascans, material production, lighting & water.
My name is Sam Delfanti and I am an Environment Artist from Marin County, California. I graduated from Pratt Institute in 2015 with a Bachelors in 3D Animation and am currently working as a 3D Generalist at Virtualitics in Pasadena California. At Virtualitics, I work creating Virtual Reality environments, props, and effects using Maya, Substance Painter, and Unity. The entirety of my career has been within the VR industry beginning back in 2017. I have worked for other companies such as Disney Interactive and 3D Live // AXO.
This scene started not like my most personal scenes I create as I had a strong concept from the beginning. I have always loved the works of Hayao Miyazaki and found this lovely illustration to be a huge inspiration.
One of my main priorities when creating environments is storytelling. I believe that truly great environments tell complex stories that evoke strong emotions. Environments are not backgrounds, they are characters!
With my main reference image established I wanted to put my own spin on the scene, telling my own story. I had recently finished the incredible game God of War and thought “I could see Kratos and Atreus silently skimming across the water in their boat toward this unlikely tree growing beneath the world’s surface.” This was where the idea for the boat started.
The Use of Megascans & SpeedTree
Following my main reference image, I knew that the main characters in my scene were water, nature, and light. I am a huge fan of Megascans when going for realistic natural environments as I find creating foliage from scratch time consuming and honestly not very fulfilling creatively. I use Megascans when I can in conjunction with SpeedTree when developing natural worlds, only scratch modeling assets on occasion when entirely necessary.
Integrating Megascans Assets
When importing Megascans into Unreal Engine I tend to start from scratch the way I would with any other asset. I always rename and organize things within my project directory so that I can quickly find and edit files. One thing about Megascans assets to note is that they can take quite a while to import so be patient and try not to import more than a few at once!
For the Megascans assets, I choose to make use of master materials, one for transparent (foliage) and one for opaque (usually everything else).
This is the basic setup I use for the two master materials, Opaque and Transparent:
I’ve added controls to most of the inputs so when using material instances I can change their appearance and behavior on the fly without having to compile beforehand.
I find the most useful controls here to be those which control normal intensity. In this scene, the silhouette was very import and normal intensity affected the rim lighting a great deal.
For the background cliff, I used another Megascans asset treated the same way as the above materials.
The lighting here was my main focus. I wanted the background to be a quite subtle hinting at huge underground cliff wall. I achieved this look by using mainly indirect lighting from my directional light while adding highlights with spotlights using a caustics effect
This caustics effect was created by applying a light function to a spotlight that pans and warps grayscale caustic textures. I created this effect by recreating the material setup seen in the fantastic breakdown by Timothy Cole.
This is the material setup I created following Timothy Cole’s method.
Lighting was by far the most challenging and most satisfying part of this scene. I believe lighting is half the battle when creating environments and that it can absolutely make or break your scene.
All lights in the scene apart from the directional light are moveable. The reason I chose a stationary mobility mode for my directional light is that I wanted the superior indirect lighting and GI provided by lightmapping while still needing real-time shadows for my volumetric fog, particles, and animations. I chose movable lights for the remainder as this was not for a game so performance wasn’t too big of a concern.
I created the spotlight effect by casting a directional light into a giant “lightbox” of sorts, only letting light into the box in specific areas.
I used a volumetric light with volumetric height fog to achieve the streaks.
To increase the streaks in my fog I also added a simple light function to my directional light.
This was my first time creating water and I had a blast doing it! I followed the tutorial on Unreal Engine’s wiki and I found that with a little extra editing I could achieve the look I wanted.
A very important aspect of this scene is the clear reflection on the water’s surface. I experimented with screen space reflections but was not getting the cleanest edges and quality I wanted. In the end, I used a planar reflection which provided beautiful clean reflections and was quite easy to set up at the cost of performance.
There were a few challenging aspects to this scene. A major one was lightmapping the tree. The geometry was very complex as it was a mesh exported from SpeedTree Cinema rather than the Unreal Engine 4 version of the software. In the end, I needed to set the leaves to moveable because they were just too complex for me to get a good lightmap. All other assets are static apart from the birds which are animated.
Another difficult aspect was in the modeling of the boat. Getting the silhouette and shape right took a while and even a couple restarts! In the end, I found extruding along curves to be the best method allowing me full control of the contours of the boat.
If you guys like my work head over to my portfolio.
Sam Delfanti, Environment Artist & 3D Generalist at Virtualitics
Interview conducted by Kirill Tokarev
Simple River Stones by Stan Brown is a procedural material for your environments fully made in Substance Designer. The package includes a fully commented and organized graph for study and customization.
Any future updates are included and will be available for download in case they are released.