PRODUCTION LOG 08

MATERIALS - TILEABLE

In this production log, I will detail the process of creating tileable materials to be used later in Unreal Engine, materials for various models in the scene such as walls, ceiling, floors, metal bars and frames, etc. This step involve using Substance Sampler to generate tileable textures, exporting these textures at a high resolution, importing them into Unreal Engine, and setting up master materials with adjustable parameters.

Substance Sampler

To begin, I used Substance Sampler to create high-quality, tileable textures for various materials within the bunker environment:

For each material, I started with a base material layer and then added different layers such as dirt, dust, erode, rust, or different patterns in order to generate textures that were seamlessly tileable. The process also involved adjusting height, roughness, and ambient occlusion maps to achieve a consistent look across large surfaces. 

Below, there are a few examples of some textures sets and material preview generated in Substance Sampler.

Wall Material

Ceiling Material

Workbench Panel/Frame Material

Rust/Paint Material

Rubber Material

Steel Rust Material (variant 1)

Steel Rust Material (variant 2)

Once the textures were finalised, I exported the texture maps at a resolution of 2048x2048 to ensure a balance between quality and performance and that materials look detailed without causing excessive load on the game engine. The exported maps included:

Importing Textures and Creating Materials In Unreal Engine

Next, I imported all the textures maps into Unreal Engine, then proceeded to create all materials that I needed for my environment. Within the material editor, I set up various functions and exposed parameters to allow for adjustments later in material instance editor.

Base Iron Material Graph

The material graph above shows a base setup for all the tileable materials that I created in Unreal Engine.

Texture coordinates and parameters:

Texture sampling:

Next, I created material instances from each base material. Material instances have same properties as the main material, but allow for individual adjustments. This approach is efficient, as it reduces the number of base material variations and also allows to create multiple instances based on same material to make scene-specific tweaks.

Mat Inst Example.mp4

In each material instance, I adjusted the UV tiling multipliers, tint, and brightness parameters to fine-tune the materials for their specific surface within the environment. This ensured that materials looked as realistic as possible and fit seamlessly.

MATERIALS - EMISSIVE

Apart from the Unreal Engine's built-in lights, I am going to need additional lighting materials and functions. For example, in Hydroponics area I am planning to add a few fluorescent light tubes of various colours, intensity, and brightness. To do this, I decided to create a master emissive material and, based on it, additional material instances. 

Creating an emissive material in Unreal Engine is pretty simple and straightforward. The core of this material involves using an emissive colour input which determines the light emitted by the material. I set up the material with the following components:

Additional nodes were added, such as texture samples to multiply with emissive colour and one for the normal node. These are useful in some cases when you want to add a specific image to models such as a screen.

In material instances, I can control the colour and emission strength to create various light colours to simulate a realistic range of fluorescent lighting, and adjust their intensity to suit specific requirements of different sections within the bunker environment. 

LIGHT FUNCTION

Another thing that I wanted to make for this project is a light function that adds various effects to light actors in the engine, such as a flickering effect. To do this, I followed a tutorial provided by Unreal Engine on their documentation website.

I created this simple light function with the following elements:

Flickering Light.mp4