On Friday, several members of the Engineering team met up to discuss their field, what they do for Treyarch, as well as how they bring their skills to bear in the name of video game development. If you missed it, the VOD can be viewed here.
With Black Ops 3 having marked the studio’s first release on next-gen consoles, we thought that it would be interesting to pull back the curtain and give fans a deeper look into the development process, particularly from an engineering point of view.
As we begin, it’s hard to look at where we are now without examining where we came from. Black Ops 2 ran on an extremely well-designed engine, but it was created with the capabilities of older hardware in mind. As we started Black Ops 3, we quickly realized that many of the decisions made in the design of that engine were not appropriate for the systems we were targeting. The higher processing power and RAM available in the newer consoles meant that we needed approach things differently. It was a whole new world, filled with new possibilities and our team embraced that challenge!
Our first area of interest was lighting. The last generation of consoles presented limitations on the number of lights that could be rendered at once in order to achieve framerate targets. To address this, we wiped the slate clean and started over.
We removed the traditional forward lighting system that we were using at the time and replaced it with a new, deferred renderer. Deferred rendering is a technique that allows us to reduce the amount of work we do per-light. That means we can handle many more lights at once, but more importantly it allows our artists to light each scene without worrying about the engine restricting the number of lights they use per surface.
Additionally, we knew that we could do more with the quality of our indirect lighting. Black Ops 2’s baked lighting had excellent quality, but it could only be applied to a few types of surfaces. As is common in forward lighting systems, a second, lower-quality solution was needed for any moving objects in the scene or objects with complex geometry. One of our goals with Black Ops 3 was to allow more objects to be placed in the world, so it was important for us to have a unified lighting solution for every object in the game.
We decided that traditional lightmaps weren’t feasible for this. Instead we created a solution that augments our reflection probes with enough data to reconstruct indirect lighting for any point in 3d space. This means that we can apply high quality lighting to anything in the scene, regardless of what is being rendered.
Armed with this new system, we started looking for more things that we could light. We started with fog, which in Black Ops 3 reacts naturally to light and shadow. This creates beautiful shafts of light that adjust dynamically as objects move through them. We then applied lighting to all of our particle systems, giving us fire, smoke and mist that fit naturally into each scene.
Transparent surfaces often cause terrible issues for renderers because they have to be rendered in a specific order to look correct. The artifacts created by incorrect ordering may be hard to spot, but they create a subtle break in the illusion that plagues many games.
Once again, we knew that we could drive the capabilities of transparency forward, which required a lot of manual tweaking by artists. To solve this we created an order-independent transparency system. Each transparent pixel is sorted independently before being rendered to the scene, which eliminates artifacts from incorrect ordering. This also interacts correctly with dynamic fog and particles, creating a world that just looks “right” without manual tweaks.
We also knew that water would play a large part in Black Ops 3, so we also created a new dynamic water simulation system that can handle the demands of all of our gameplay modes. The system uses realistic physics to model water surfaces and allows for full interactivity when needed. Our water also reacts with light and its surroundings in ways that model the complex behavior of actual water, from reflections above the surface to refraction below, even including flowing ripples and debris.
Finally, we felt that there were opportunities to improve on the destruction and animation elements of the game, so we created a brand new animation system for Black Ops 3. The system is fully GPU-based, meaning it can efficiently scale from simple animated tarps or flags to complicated character faces and even to buildings exploding with thousands of moving parts. We can now represent animations at higher quality and on a larger scale than ever before, and our artists have definitely risen to the challenge.
This is a mere sampling of the changes that we made over the course of our three-year development cycle. Ultimately, these changes helped make for a more immersive experience, pulling players deeper into the dark and gritty world that is, Black Ops 3.