Building an Organic Environment in UE4
Leonid Prokofiev talked about his UE4 studies and splendid environment made within the CGMA course Organic World Building conducted by Anthony Vaccaro.
Introduction
Hello, my name is Leonid Prokofiev, I started to learn 3D by myself at the university. The first time I worked at Threedex studio where I created interiors, exteriors, and sometimes assets for games. Currently, I am working as a 3D Artist at Gameloft studio in Kharkiv, Ukraine. In this company, I had the pleasure to work on several games such as Gangstar Vegas, Spiderman, Asphalt 8, and Asphalt 9.
Goals
Every 3D artist is a designer in some way should not only create good assets for the scene but also know how to harmoniously fit them into the scene in order to hook the player. The main goal which I decided to study CGMA course of Organic World Building for was to improve the skills of creating an environment: gain some knowledge in order to know the way to properly locate the objects in the world, learn how to make the environment more interesting. And of course, I wanted to study Unreal Engine.
How the Project Started
The main idea was to create a forest area somewhere far away, which would be captivating not only because of its natural beauty but will also include man-made objects. It’s also very good when you choose a place, time period, and culture before you start creating your own scenes. I decided to make a place where the plane crashed (it determines the time period) and a survivor’s house in a location similar to South Dakota. I did not have time to do everything that I planned, but at least I did something.
I found a few references for my location and started creating a rough top-down map of my environment.
Then I started to block out my location in 3ds Max.
Also, I created a list of assets that I will need to create for the scene: this will help with planning the time. After that, I started learning UE. I exported some large block out meshes from 3ds Max and began creating my environment using the Landscape tool.
Mesh Approach
First, I started making rocks. I uploaded a block out mesh of cliffs into ZBrush and began to sculpt, guided by my references. Just for the sense of scale, it is very convenient to upload an additional human reference or something that will help you understand the scale. I needed to create large shapes and tried to get an interesting shape. It is not necessary to detail much since I will add detail on the normals already in the material in UE.
As for low-poly mesh for organic objects, I created it automatically using decimation. Usually, I do it in ZBrush. Then I go to 3DCoat and adjust my low-poly mesh and do UVs there. There are very convenient tools for editing and creating seams plus organic objects are unwrapped very well.
Normal maps, ambient and height maps are baked in xNormal.
Creating organic objects is not an easy task, it takes a lot of time not only to create the model itself but also to set up the material in UE.
Rocks Production
It is necessary to constantly use the rule of PST (primary, secondary, tertiary) form, Anthony (the instructor) always spoke about this. In addition to the large rocks, it was also necessary to create smaller rocks that fell off the large ones for a good transition from rocks to the landscape. Boulders and stones were sculpted in ZBrush.
To make a rubble pile, I reduced the number of polygons of my stones, created a nanomesh brush and scattered them on the ground mesh.
This is very useful and can be used to create textures in ZBrush. For the convenience of texturing and creating material in UE, you should the subtools of your stones and ground fill with color, so that later you do not have to paint everything manually. It’s easier to bake vertex color in xNormal.
When I create assets, I almost always work in a combination of ZBrush for sculpting and 3DCoat for retopology, unwrapping and texturing.
Vegetation
To created the foliage, I began with modeling high-poly grass to make a texture with good alpha and rendered everything that I modeled in 3ds Max.
In the same way, I created branches for the fir.
In order to add variety, I created several large, medium and small clumps of grass. The variation in color was made in the materials in UE.
Next, I started creating my trees. I made several branches and arranged them along the trunk. Just like with the grass, I made several versions of the tree to create a variety. In order to later adjust the swing of the branches in the material, you need to paint vertex color of the branches before the stage when you arrange the branches. The same applies to the grass.
River
I did not have enough free time to make a water shader from scratch, so I found a river water tool in the UE marketplace and downloaded it. In the material, I made the river a little calmer, reduced the displacement, made the foam not so intense, reduced the color saturation, and added more opacity to the water.
You can find James Stone’s River Water Tool here (UE Marketplace) or here (Gumroad).
Texturing
I downloaded the textures of the ground and made them seamless in Photoshop. Then I created normal and height maps in Crazy Bump. For landscape, I used the material with LandscapeLayerBlend node. This allowed me to mix 11 textures for my landscape. As a blend texture, I used height maps, so that the materials are mixed more naturally.
Some textures such as the texture of the rocks were made in ZBrush.
In 3DCoat, I created basic textures that do not need to be tiled. For example, this is the basic texture of the airplane. I used vertex color for many materials in order to blend a few textures and make the material more interesting. Sometimes I added a slope texture in the material using the WorldAlignedBlend node, for example on fallen trees it was moss.
I also did the basic paint of vertex color if it was necessary. For example for an airplane, I made a base color for rust.
Of course, such programs as Substance Painter and Substance Designer are necessary for creating good custom textures.
Lighting
Before I started lighting, I found references and created a mood board to understand exactly what I needed.
As the sources of lighting, I had only DirectionalLight and SkyLight. Lightmass settings were not changed. I left the light source dynamic and didn’t bake lightmaps.
For skylight, I used an HDRI map, I made a sphere with inverted normals for the background and assigned the material with HDRI on it.
I also added AtmosphericFog and ExponentialHeighFog and slightly adjusted the settings. In addition to the fog, I used planes with the fog texture which I placed near the rocks and above the water. In order to add more sunlight I also used planes with sun rays. In post-processing I added bloom, lens flares, change contrast. I made the picture in warm colors, slightly changing the white balance.
After that, I added LUT in the camera settings. I found the pack with LUT presets, chose the most suitable for my references and changed its influence.
To adjust the night render, I reduced the intensity of DirectionalLight, made the HDRI map darker, removed the sun rays and changed the LUT in the camera. I made the night LUT using the standard Photoshop settings.
Feedback
One of the most interesting things for me as a 3D artist was the UE Landscape system. I also found interesting the foliage tool: this tool really helps to plant your vegetation over the surface very quickly.
Of course, I do not consider UE4 as an easy set of buttons that allows doing everything right. The tool is very powerful and has impressive functionality, so one cannot learn everything at once. However, if you set a goal and get enough patience, you will succeed!