My role on the project was to help create the look and feel of the in-game robot characters and weapons. I had a good feeling this would be a ground breaking VR game so naturally, I was pumped to see the glowing previews when the game was first announced last fall at the Oculus Connect 3 conference.
The game received high praise from gamers and critics alike who specifically raved at the high quality visuals.
A home run for the Epic Games team whose goal was to create a VR game that doesn't look like a VR game. Creating quality AAA visuals for VR is no easy feat however, mostly due to the fact that VR games have higher technical constraints than your typical desktop or console title.
For one, some people can get nauseous in VR unless the game is running at a high frame rate, usually around 90 frames per second (fps) compared to the average console game that runs at about 30-60 fps.
Getting a higher frame rate usually means cutting corners, so it was important for the team to choose the right tools for the job. One of these tools in particular was using Substance Painter, a 3D painting and material creation app that is popular in the video games industry.
It was decided early on that we'd be using Substance Painter due to its ability to visualize the materials and textures of the assets in a PBR lighting workflow. What this means is that we were able to visualize how the objects looked in a realistic lighting setup, way before going into Unreal Engine for final lighting and animation.
Substance Painter VR Process
We had a tight deadline on the project, usually a week or less to paint an entire character, so this meant I had to be efficient in my workflow. It was evident at the onset of the project that I would need to create a material pipeline and Substance Painter proved invaluable for this task.
Substance Painter lets you create what it calls Smart Materials. They are materials that you can setup and reuse from project to project. The process meant determining a "master" material that would be shared among most of the assets.
I worked closely with the project art director, Jerome Platteaux, in determining the right look and feel for the in-game robots and weapons.
One of the first lessons was learning how to design effective materials for VR. Having the ability to walk around your design was a total trip that put things in a whole new perspective, so the challenge was making the characters pop in the virtual environment.
The solution was creating a variety of materials with varying specular attributes. This meant that creating a balance of what is shiny vs dull, makes a world of difference in creating a feeling of dimension in VR if done successfully. As you walk around a character for example, your eye catches the varying difference of glints and surface details that help sell realism.
Another important feature of Painter was the use of Smart Masks. These are procedural masks that give you a formulated way to create scratches, including wear and tear. I was amazed how quickly you could create a complex look without having to manually paint every surface of your 3D model.
It's not to say that Smart Masks are a complete solution though. The masks get you a quick result, but it was up to me to manually edit to fight off a procedural look. Smart masks are a fantastic tool, but ultimately it was my responsibility to direct the results and inject personal style into the work.
For instance, I used a trick I learned back in my 'ol VFX days at ILM working on the Transformer movies. Creating convincing materials require subtle layering of textures to create a complex roughness map. A good roughness mask causes a sheen that dances as the light moves across the surface.
Achieving this result often meant adding in layers of manual and custom paint work on top of the automated smart masking.
The final result of using a combination of hand painting and smart masks to create a roughness map.
A key component of keeping consistency among the robots was adding elements like decals and graphics.
Substance Painter has a great Projection tool that gave me the flexibility to easily project text and decals onto the characters. By being able to scale, move and rotate my custom graphics, I was able to place and project them onto the model without having to go into a 2D program.
While the final looks were done in Unreal Engine, most of the heavy lifting was done entirely in the painting program. Substance Painter uses a Physically Based Rendering workflow, or what is often referred to as a "PBR workflow".
Basically, this means that we can create textures that will look consistent under different lighting environments.
So the "look" of our assets in Substance Painter were fairly consistent to what I saw in Unreal Engine. At the very least, accurate enough that I was able to tweak my materials and surfaces in Painter and have confidence that the final product would resemble what I was visualizing while painting.
It's important to note, that the final "buy off" on the look was always done in VR. So it wasn't until we put on our VR headsets and viewed the object in virtual reality (using Unreal Engine) that I was certain I had nailed the look I was after. Viewing the painted 3D models in VR was a crucial part of judging the work.
Robo Recall was my first project using Substance Painter and I have to admit, I'm hooked! It's a fun and highly addictive program that proved to be an invaluable tool for me to create the characters, weapons and props for the game. I'm sure I'll be using Substance Painter as part of my everyday tool set from here on out.
Much props and respect to the team at Epic Games. Tommy Jacob for keeping the project moving forward, Pete Hayes, Mark Van Haitsma for creating the amazing models for me to paint, Jerome Platteaux for pushing me to create cool art, and Kim Libreri for giving me the opportunity to collaborate with the team.