Defining Tessellation and Its Impact on Game Graphics (with Epic Games)

By Published May 10, 2015 at 3:58 pm
  •  

“Tessellation” isn't an entirely new technology – Epic and Crytek have been talking about it for years, alongside nVidia's own pushes – but it's been getting more visibility in modern games. GTA V, for instance, has a special tessellation toggle that can be tweaked for performance. Like most settings found in a graphics menu, the general understanding of tessellation is nebulous at best; it's one of those settings that, perhaps like ambient occlusion or anti-aliasing, has a loose tool-tip of a definition, but doesn't get broken-down with much depth.

As part of our efforts to expand our game graphics settings glossary, we sat down with Epic Games Senior Technical Artist Alan Willard, a 17-year veteran of the company. Willard provided a basic overview of tessellation, how it is used in game graphics, GPU load and performance, and implementation techniques.

Alan Willard Interview – What Is Tessellation?

At a top-level, Willard explains that surfaces and walls (think of these as a flat surface) are built out of “quads.” Quads consist of two triangles that are “butted-up together” to make a square. This is how 3D graphics are built.

tessellation-ue4-2

tessellation-ue4

When we asked for a top-level definition of tessellation, Willard explained (emphasis is ours):

“Tessellation is a way of doubling [the triangles] on the graphics hardware – so what was two triangles becomes four, what was eight becomes sixteen, and so on. When we do that, that allows us to do things like displacement or smoothing and increase the apparent detail. This not only makes the surface look higher resolution, [but also adds] bumps and hills and valleys that weren't there before. You get a much higher fidelity surface.”

This topic was first brought to Epic Games by nVidia nearing the end of the development cycle for Unreal Engine 3. Some readers may remember the Samaritan demo, a video showcasing rocky extrusion from a human character's face. This effect was produced using displacement mapping that ultimately gets rendered by the GPU, assisting in the dicing of objects into more triangles. Dicing objects in this fashion allows for more curvature, bumps, gouges, and so forth. Willard outlines boulders as an easy example, as seen here:

tessellation-ue4-4

tessellation-ue4-3

We asked whether tessellation could be impacted by camera angle or distance, curious as to techniques to create false depth to surfaces without consuming too many system resources. Willard educated us on techniques:

“Epic biases displacement in tessellation based on camera distance. A small object far away doesn't need to spend performance for [tessellation]. Think of a wall as a flat surface. You can do a lot of shader tricks to make it look better – what we call 'bump offset,' where we shift the location of pixels based on the camera angle – and that can give you the sense that the bricks have depth and are coming out of the surface. What you'll never get is a silhouette off of that kind of technique. Displacement and tessellation allow us to increase triangle density and then push and pull those triangles in, out, to the sides to get those shapes to come off of that surface. Lighting and shadowing can work with those shapes to sell the final look.”

In a practical application, this is noticeable when observing a flat wall in-game that has a brick texture applied to it; Epic could extrude the wall's triangles, producing an appearance that the wall is modeled with depth corresponding to the protruding bricks.

NVidia separately made clear that tessellation is often heavily automated by the underlying framework, but still requires fine-tuning by technical artists in-house. The automation of tessellation helps streamline production of high-fidelity, realistic graphics and avoids increasing development overhead.

Tessellation is a GPU-bound item. Modern architectures – Fermi, Kepler, and Maxwell included – include dedicated tessellation units that allow for independent processing of tessellated objects. Learn more about underlying GPU hardware here. Impact on hardware will depend based on the game, engine, and implementation of tessellation. In our benchmark of GTA V's tessellation, it becomes clear that impact can sometimes be negligible -- but there may not be much tessellating going on in GTA V compared to, for instance, a more intensive PC title.

gta-v-set-tessellation

Previous Epic Games content includes our discussion on the legitimacy of virtual reality and its inherent design challenges, discussed with Chance Ivey, and the “science” of level design with Jim Brown.

Unreal Engine 4 can be downloaded for free here.

- Steve “Lelldorianx” Burke.

Last modified on May 10, 2015 at 3:58 pm
Steve Burke

Steve started GamersNexus back when it was just a cool name, and now it's grown into an expansive website with an overwhelming amount of features. He recalls his first difficult decision with GN's direction: "I didn't know whether or not I wanted 'Gamers' to have a possessive apostrophe -- I mean, grammatically it should, but I didn't like it in the name. It was ugly. I also had people who were typing apostrophes into the address bar - sigh. It made sense to just leave it as 'Gamers.'"

First world problems, Steve. First world problems.

We moderate comments on a ~24~48 hour cycle. There will be some delay after submitting a comment.

Advertisement:

  VigLink badge