Anna Fedorets broke down into detailed steps her process of building and lighting the Head of Goddess and the surrounding environment.
Since my childhood, I’ve liked video games and even missed school a couple of times to play Duck Hunt. Surprisingly I’d never thought of becoming an environment artist until Sperasoft started training 3D modelers for level art.
I like making environments because it gives me a great opportunity to bring to life places that can be found only in my imagination. With props and lighting, not only can I create a particular mood but also tell a story. There’s one thing about environment art that makes it more attractive to me than characters: when you are in a game environment, you get the feeling of being there. It’s still you and even though the surroundings are virtual, the feeling is real. This helps you to visit places that do not exist in the real world or are hard to reach and get a unique experience.
In this article, I would like to talk about some tricks I used in my recent works, that, I believe, could be helpful for game environment artists. I don’t want to turn this into another general “making of”, so I’ll run through the pipeline quickly and then skip to some info that I found useful.
Head of the Goddess: Building
First of all, Head of the Goddess was a test task for Larian Studios. They provided a rough sketch of architecture design and an atmospheric concept of the altar that I can’t show. I would also want to mention, that the art director of Larian was giving me valuable feedback that improved the final quality.
When I started it, I ran through other artists’ test tasks that I’ve found on Artstation to see some strong and weak points. I didn’t want to make just a regular piece and wanted to stand out.
The first thing that caught my attention was the brick partition on the head. It was a part of the task and in the majority of works, it didn’t give the impression of aged, chipped blocks. The second thing was that the head was too much built-in into the wall and didn’t give the feeling of the Goddess greatness.
The last point became my main goal: I wanted to show how great and gorgeous the Goddess was, so I made her stand out from the wall and made her neck go into a pool to create the feeling that the whole Goddess body is hidden underneath. Also, to separate the head from the environment, even more, I decided to make it from a brighter marble, while the rest of the scene is made out of darker stone.
These things together with the lighting breathed life into the model while block gaps still remind the viewer that this is a statue and not the Goddess turned into stone.
I examined the concept for repeatable parts, then created the first blockout with placeholders for each piece. This helped me to evaluate the amount of work and also to measure the progress.
The project was divided into 3 main pieces: head, architecture, and rocks.
- Stone Blocks Partition
I believe that this pipeline part could be useful, so I’ll go into more details about it.
One of the main points of the test task was to make a head statue look like it was build up from separate stone blocks. I sculpted the full head first and only then made a screenshot and several overpaints in Photoshop to see how big I wanted the bricks to be and where I wanted seams to go. I didn’t want the brick seams to destroy the prettiness of the Goddess’s face (for example, crossing eyes, nose and lips) or turn the head into a mess of bricks and that’s where the planning in Photoshop helped me.
Then I divided the head into blocks in ZBrush. Each brick was remeshed and then reprojected so I got a nice topology to work with. It was helpful when I started working with chipped edges.
Head of the Goddess: Lighting
I wanted to show my scenes in a web viewer, as it gives the possibility to rotate and get a better impression of depth.
Marmoset Toolbag 3 is a great visual tool that helps you to improve the look of your models with powerful features, however, its web viewer does not support most of them and also has such limitations as light source count and file size.
It’s not so bad when you’re trying to show props, but things are getting a bit tough when you deal with a complex character model and become even worse when you’re trying to show an environment.
- Marmoset Web Viewer Limitations
Here’s a brief list of non-supported lighting features in the web viewer relevant for 3.07 version of Marmoset Toolbag (it may change as the viewer gets updated): Global Illumination, screen space Ambient Occlusion and area lights. Also point lights don’t cast shadows and the scene is limited to 6 light sources.
You can check the full list of supported features on the Marmoset page.
- Light Sources
Light sources that I use in Marmoset viewer:
- SKY – this is a regular HDRI map that lights your scene by default. For web viewer, I tend to minimize its influence as it gives no shadows which makes the picture look cheaper and unnatural.
- Directional light source – this is a global light source that casts light in one direction, has no range limits, no shadow distribution angle and casts shadows in both web viewer and normal version.
- Spot light source – this light source casts light in one direction, has a scalable range limit, shadow distribution angle and casts shadows in both viewer versions.
- Omni light source (point light) – this is a spherical light source that casts light in all directions. It is also called point light in the game editors (I might use both names here but it means the same light source). It has attenuation range, but it doesn’t cast shadows in the web viewer.
- Corner Shadowing
One of the features of global illumination and ambient occlusion is that it shadows corners. This helps to define shapes and enhance depth perception of the scene, but there is another way to achieve a similar look using an Omni light with limited distance.
Even though Omni lights can’t cast shadows in Marmoset web viewer, using them with short range and soft attenuation curve can create great depth and highlight important areas.
You can also imitate bounces by placing small light sources in the corners with some particular color, but it eats your light source count and the result isn’t very effective.
Using different colors and intensity for upper and lower sources helped me to create a mystic atmosphere for the Goddess Head and also to highlight the parts of work that I wanted to demonstrate.
- Shadow Casting
Falling shadows not only enhance the direction of light, but can also add specific mood to the picture.
Usually, in games, the quantity of shadow casting light sources is limited due to its performance cost.
Calm against Scary
In my scene, I used one spot light from the top front to get slight shadows from horns and chin as it felt unnatural, and another spot light from the left side to highlight the metal fence and get a nice shadow in the niche.
I know that using the head as an example is a cheating way to show the lighting mood tricks because most environments don’t have facial features to play with, yet it’s another instrument to use in your scenes. So try to keep it in mind.
- Back lightRim light
I used this effect in my corridor scene. It helps to separate the model from the background and make the silhouette more readable. This is usually used for characters and props demonstration but can be used for some environment parts, too.
The idea to make another scene from existing parts came out of nowhere.
I had pieces that I spent a lot of time on, and they were only used as a frame for the head. They had so much more in them that I decided to make a quick scene without extra modeling.
Using the existing trims and pieces I created several modules for columns, walls, and platforms and put them in a row creating a corridor. I used the stone pieces to break monotonous repeating of same pieces and create the feeling of a ruined place.
The intention for the lighting was to hide imperfections in the darkness and add some depth with the help of atmospheric effects. I used the classic warm/cold contrast making the background cool and calm, while the foreground had a feeling of artificial lighting source like a torch or open fire.
The camera’s orbit is a bit shifted because even though I couldn’t give it full freedom, I still wanted to leave the impression of a 3D scene and not just a 360 screenshot.
I guess the main inspiration for the mood came from The Lord Of The Rings Moria, but I didn’t have any particular reference and it happened subconsciously.
As I stayed within the web viewer, the limitations there were even harder for larger scale scenes. I had to be precise with light source placement.
The foreground is lit with two orange sources:
1) an Omni light with a tight range spherically grabs the surroundings, influences the reflection on metallic parts, and slightly lights the inside of an arch to give more depth to the closest segment.
2) A spot light creates falling shadows that enhance the feel of darkness.
The cold lighting consists of 3 sources. The furthest is a spot that beams directly on the camera and creates a huge portion of the picture’s atmosphere together with fog. The next is a point light that stands between stones to create a better rim light. I also had to use a rim value of material above sliders limit (you can enter it manually) to get a more exaggerated contour light.
And the third point light stands closer to the camera, right before stones to create the transition from the pure dark area into the bright blue volume light. It grabs just the right amount of walls to give a nice depth and show extra detail.
Once I was done with main lighting, I still had one extra source to use, and I decided to counterweight the blue volume beam with a similar one on the other side, but weaker and warm, to make it more interesting to rotate and explore what is behind you.
Of course, it didn’t happen instantly. I had to balance the source placement, intensity and check every contribution to the scene’s atmosphere by switching the changes on and off. As I was relying on the web viewer, I had to export the scene and check it in the web browser, as even if you don’t use the unsupported features, the web viewer shows the scene differently than the main viewer.
Optimization for 3D Viewer
Web viewer has different export quality modes that downsize textures to reduce the total size, but I didn’t want to have all textures blurred. Therefore, I manually scaled textures that I thought were not important and reduced the number of stones around.
The web viewer does not support instancing and treats everything as a single mesh. Even though all the pieces were just duplicates, it was really hard to fit them all into the size of 15mb (Artstation’s limit for non-pro accounts). To get the right size I had to create 2 LODs for each piece and place them manually depending on the distance from the camera. This is actually the main reason the camera is fixed in this scene.
Here are some final recommendations for environment artists:
- Define what is the main point of interest in your scene and make sure you lead the viewer to it. Use not only light but also color, material difference, and space around it to multiply the effect.
- Warm and cold lighting contrast. This is a classic method, and if you don’t have any idea where to start from or a good light reference, this is a good starting point.
- Try to make a simpler and more even lighting. It depends on the goal of the project, but most of the time, the game environment should give the player a good sense of space and shapes to better navigate through the level. Sometimes, a big number of small lighted areas can break your pictures into an unreadable spotty mess, while fewer lights can highlight the volume in general. This could also be an additional tool if you want to confuse the viewer. Again, it depends on your goal.
- Sometimes, a good atmosphere and interesting composition can be achieved with the minimum resources (assets).
And don’t be afraid to experiment with the lighting. For me, it was more like balancing, as I actually tried different lighting solutions and each different angle of a single source was giving a different mood.