Hi! Étienne Carrier, here. I’m the Technical Artist on FATED.
Developing graphics for VR is an awesome challenge! It’s an all new playing field with whole new constraints and rules. I’m learning new tricks every day, and through this blog I aim to share them with you.
When we started developing the graphic pipeline, it was clear that we needed a visual style that would help us reach our performance target. In VR, there’s no slacking off. If the framerate drops even for a second, you get a hefty dose of simulation sickness. It was therefore a lot more natural to go with a stylized art style that would not only help us with performance, but also look good in VR. Smooth and non-noisy texture feels great in virtual reality, and it helped the 3D stay faithful to the awesome artwork that Marianne Martin (Art Director) and Marie-Hélène Morin-Fafard (Concept Artist) created.
VIEW DISTANCE & NORMAL MAPS
Applying tricks learned while developing mobile games can turn out to be a lifesaver when you have to run at 75+ fps. The art really needs to be planned accordingly. We built our environments in a way that limits the view distance and allows the occlusion culling to work for us. Normal maps only work well for micro details or from far away. We actually want to fade details out with distance, as it tends to get noisy due to the pixels density on VR headsets. The micro details go against our soft texture style, and the distant normal maps go against the fade of details in the distance. So we decided to never use normal maps, which also helps us get more performance.
We chose Unreal Engine 4 to develop our game. We began by setting up our basic scenes, because even the default template scene was not reaching 75 fps on some PCs. We removed most of the post-process, screen space reflection, and anti-aliasing. We also used static directional lights, then built from there while profiling every step of the way.
Unreal has a great many tools to help us build our environments efficiently. Here is a video showing how we used some of these tools together. Along with Unreal’s landscape and foliage, we built a material that projects a texture on top of props like rocks to help them blend with the terrain. The blueprints allow us to dynamically create a material instance for each static mesh, so they can all have their specific settings. Using the same texture as the landscape helps to blend them seamlessly.
That’s it for now, we’ll have more tips & tricks coming up later!