Gilad Baruch shared an extensive breakdown behind Dr. Anna's Surgery Room project, talked about the techniques that save time while modeling, and showed the lighting setup in Unreal Engine.
Introduction
My name is Gilad Baruch, and I am an environment art student from Israel. Currently, I’m studying environment art at Think Tank Online. Before this project and my study at Think Tank, I was freelancing as a 3D generalist mostly for architectural visualization and small indie projects. After a while, I decided to change my direction to environment art, so I signed up to Think Tank. In this article, I’ll break down my intermediate-term final project.
Reference Gathering
When I was asked to choose a concept for the project, all I knew was that I wanted to make an abandoned place with a scary mood. After a lot of searching, I found Dr. Anna's house location which was just perfect for this kind of project.
This location was very well documented by photographers and had a lot of photos and videos from different angles of the room which helped me a lot. After I found the photos, I created a PureRef file containing most of them.
If you need references for abandoned places, I recommend checking these sites, they have a lot of high-quality photos of different locations:
Blockout and Modeling
To set up the room dimensions, I had to figure out a scale reference from the image so I could estimate the room dimensions. I estimated that the wall tiles were 16x16 cm. After that, I started to block out the walls. Then I blocked out the main assets, exported them to Unreal, and made a first lighting pass
After blocking out the scene I made sure the dimensions of the door were playable and wouldn't cause any problems with collisions and such. I also made sure all the modular assets worked well and were ready to be used in the engine.
I didn’t have time the make a proper high poly bake for most of the small assets, so I used one segment bevels with Harden Normal to fake the high poly look. In my opinion, this is a great way to save time for smaller assets when you’re in a rush.
I used several add-ons including HardOps/Boxcutter, Texel Density Checker, UV-Packer, and Uv Toolkit to boost my workflow in Blender. I really recommend checking them out.
I did not use any ready models in the scene apart from the ivy which I took from Megascans.
Texturing
To create the tiling textures, I used Substance 3D Designer. Inside SD, I used a lot of techniques including photos and importing sculpted mesh from ZBrush.
I also created some base materials in SD to be later used in Substance 3D Painter. To achieve a more realistic and unique look, I created a damaged and clean version for the tilables to mix them later using vertex painting.
To texture the unique props, I used Substance 3D Painter. I noticed that the scene had a lot of rusty assets, so I created a smart rust material using anchor points with blurs and slope blurs which came out pretty nice.
Shaders
After the texturing was done it was time to set up the shaders for the scene. I created a few master materials as well as some materials functions which I integrated into the master materials. I also used static switch parameters to keep the shader optimized.
I created a Dust function that allows to quickly apply procedural dust effect around the scene. This helped me a lot in achieving the dusty look of the scene around the modular assets.
I recommend checking this video if you want to make a dust material in Unreal.
I also created a simple vertex painting function and a dirt function. This is where the damaged textures that I made earlier took place.
I used detail textures and masks to combine microtextures with macrotextures. This workflow helped me to achieve high texel density while adding some unique features to the asset. Here’s a great video explaining more about Detail Normals.
After assigning the textures and creating the shaders it was time for a decal pass. For the edge damage decal, I created an SD graph that generated a damaged decal from an alpha input.
To create the trash decal, I combined a lot of photos both from textures.com and Megascans and scattered them in SD using the atlas scatter node. After that, I created a shader in Unreal to randomly mask the decal.
I also created some dirt, leaks, and gradient decals to achieve the dirty looks of the scene. Some of the dirt alphas are from Megascans, but most of them were made by me.
Lighting
For the lighting, I started by placing a directional light, then I placed an HDRI sphere and a SkyLight actor. I also placed some spotlights and rect lights around the scene to light up some dark spots that I wanted to show more.
Then I added an exponential height fog with volumetric fog in order to add the light shaft and some mood to the scene. To create the light shaft, I placed a movable spotlight with a very high volumetric value to create the effect. This video helped me a lot in setting up the lighting.
To bake the lighting I used the GPU Lightmass which is absolutely great. The baking times were very short and provided very high-quality bakes that allowed me to change and tweak the lighting without previewing it on low quality. This video helped me a lot with troubleshooting and understanding the GPU Lightmass.
Here are my final settings for the GPU Lightmass. I found these settings to provide the best result for my scene, but they would probably be different based on your scene.
Conclusion
This project was my first environment in Unreal and it was very challenging to complete in such a short amount of time. This whole project took about one and a half months. I’m very happy with how this project came out and how I progressed during this term.
My advice for aspiring artists who want to create such a scene is to focus on the bigger and more important details of the scene and try not to get stuck and waste time on small details that won't be visible or are situated far from the camera.
I’d like to thank my term supervisor Sergei Panin who provided me with a lot of knowledge and help during this project and term.
Gilad Baruch, 3D Environment Artist
Interview conducted by Theodore McKenzie
Keep reading
You may find these articles interesting