Sunday, July 7, 2013

How a "Last of Us" art dump thread teaches "vision."

At Polycount, Rogelio Olguin posted an art dump of some environments from The Last of Us, as well as some notes on his environment construction process. All of his posts are worth reading, but I'm going to copy the part that really stuck out to me:
"One thing I hold true is that one texture will not make things look awesome. Imo well balanced shaders will. I think we are starting to move away from this one texture looks sick. Like the below textures are kind of boring alone but together it looks sweet. I really do not think anything we did in ND is "special" it just well balanced from good forms and composition (Modeling) to materials treatments (texturing)"
This shift in AAA art workflows, from focusing on individual art assets to thinking more holistically about how shaders, lighting, and art direction work together -- I think most AAA-affiliated 3D game artists agree with that in concept, but a cursory look around the Polycount forums shows that many of them still focus on honing one perfect asset for one screenshot.

Part of the problem is a games industry that demands certain types of presentation, style, and specialization in portfolios. ("To work here, you must have one normal-mapped sci-fi crate prop, with perfect topology and no wasted UV space.") But I think most of this problem stems from a lack of vision.

Like, in that Last of Us art dump thread, one poster pointed out the (to be fair, really blatant) smoothing errors on a fire truck asset. But people quickly point out -- in-game, the player will look at this fire truck model for approximately 0.3 seconds, and then move on.

That kind of pragmatism is rarely rewarded in game art communities. I think in any other thread by any other poster, the commentators would've piled-on to berate the artist for carelessness. But because people have hopefully played the Last of Us and experienced this thing in its real context, we give it a pass.

The fire truck only has to do three things: (1) read as a modern American fire truck made mainly of metal, (2) block line of sight / collision, (3) not stick out from the rest of the scene in terms of production value and paratext. It works.

Honestly -- when you're playing, would you actually look twice at this fire engine prop?

I think there is a middle-ground somewhere, halfway between ultra-pragmatic "programmer art" and ultra-decadent "artist portfolio render art" -- and that is game art that is functional and expressive and does what it needs to do. Perfection is never worth it. I think the most "advanced" tiers of AAA artists, such as Mr. Olguin from Naughty Dog, understand this implicitly.

Take this Strider model and texture flat from Half-Life 2:

Are you going to scold Valve artists for stretching the leg UVs a little, resulting in slightly distorted / blurry stripe textures? Does the inconsistent texel resolution utterly ruin this game? And look at how inefficient the UV layout is, and all that wasted texture space! Should this model be totally re-wrapped and re-textured? Would the strider, as an NPC, benefit that much from it? (For more on the aesthetics of texture flats, see: "The aesthetics of UVs" and "Loving the Bones")

No, of course not, because the player will never stare at a strider's shoulders. No one cares! The strider NPC, in-game, is still tall, dangerous, gorilla-like / giraffe-like, organic and mechanical -- the phong shaders, animations, sounds, NPC AI, and IK blending all combine to make the strider extremely expressive and well-engineered and communicate so much to a player. The texture is only a small part of that.

But that kind of nit-picking texture resolution complaint seems relevant in game art communities because static screenshots and renders encourage you to be "that guy."

And this culture of critique that imposes non-realtime standards on realtime art is poisonous because, I think, it affects the stuff that actually does go into games. The culture argues that this is the "right way" to do it and you can't even imagine an alternative. It results in art that encourages those who don't know any better (my god, the children? the future of AAA video games??) to spend hours detailing a 1024x1024 dumpster normal map, making sure the rust layers fade crisply at the edges. That time could've been spent on art direction, lighting, shaders, game design... and really, you could've just textured that dumpster a flat dull green and 0.001% of players would've noticed or cared.

Or, maybe, if you were making some sort of actual realtime interactive thing instead of a portfolio render -- maybe your newly implemented in-game first person Dumpster Racing mechanic would suddenly demand a highly detailed dumpster with puddles of piss and everything -- and then that's when you would invest substantial time and resources into texturing it. Everything up until then was a kind of premature deoptimization. Don't answer a question no one asked or solve a "lack of detail" problem that never existed.

You don't need textures, details, normal maps, specular, or even clean smoothing or mesh topology -- until you need it. But if you don't need it, then you don't need it. (Or, better yet, teach a computer how to automatically generate details.)

You don't need to appeal to an industry's unrealistic aesthetic standards to make video games because even the industry's top practitioners routinely ignore these standards.

I think this is one of the most difficult yet fundamental skills of art: to learn how to look at things, to see past the surface and understand what actually makes something work -- to develop vision.