Tuesday, April 24, 2012

On "Joiner", detail, and greeble.

Joiner is a command-line pre-compile brush generator by prolific TF2 mapper Timothy "YM" Johnson; you make several brushes to represent the volumes of your rooms, run your VMF through it, then out comes another VMF with all the struts and support beams built and textured for you.

I find Joiner fascinating because it's also (an unintentional?) commentary on TF2 design styles: rooms are still composed mostly of simple rectangular planes that join at 90 degree angles -- that's the actual functional level geometry, but a typical player would recognize that as undetailed and thus as an unfinished / crappy map. What Johnson has made is not a "make level" button, but rather a "make detail" or "stop players from whining" button. The purpose of these struts is to cover the surface in a sort of greeble, so the player won't be distracted in comparing its perceived quality against other maps with "better" detail.

Surface detail is a paradox. It is "necessary" to exist in front of the player, but it exists to be more or less ignored.

"Okay, this wall was competently constructed." And then the player's mind thinks about something more important, like whether a spy is about to stab them in the face.

The Portal series emphasizes this phenomenon with its portal shooting mechanic. There are actually two types of unportalable surfaces: neither dark metal panels nor detailed concrete surfaces can be portaled upon, and thus, both are somewhat useless to you. While scene parsing is more complicated than that, I argue that Portal generally trains you to ignore surface detail and look for places of least visual complexity to rest your eyes on, as that's where portals go. Very convenient.

Which is what frustrates me about the culture at 3D game art communities like Polycount. They model environments and characters as these purely academic exercises detached from how games actually function, framing and composing their environments as flat 2D renders, sculpting intricate nooks into individual bricks: but players will never inspect these bricks, nor will they care about the specular on that trash can model, and shaving 100 polys off that one-use statue prop will almost certainly not impact anything.

Yes, it is understandable -- many are making portfolio pieces and want to demonstrate technique and craft. But as a game maker who makes assets solely to fulfill certain roles in games, part of me also finds it a bit wasteful and perverse, that many of them are making game art that never actually goes into a game, nor fits the real constraints of making a game. (They throw away "scraps" that are miles beyond what I can model!) The models go into engines, but rarely games.

They are making game art that is not game art.

Joiner, and the other tools that came before (and will come after) that procedurally generate or warp architecture, are an attack on this "cult of detail." Only in automating the process of crafting detail will we realize how worthless it is for it's own sake, that a good game model is not necessarily a perfectly unwrapped mesh with clean topology -- rather, a good game model is simply one that works as well as it needs to.

Even foregrounded "meaningful detail" might not work as intended. I remember playing BioShock, shooting some thugs in a cave / smuggler's hideout, taking cover behind these crates filled with bricks. After an hour of fighting among these crates, I finally took a second to actually look inside them -- the bricks were actually contraband bibles, which is a meaningful and important narrative detail. However, these crates were encoded in my mind as "static cover" and not "environmental storytelling" so that's what they were.

If I remember correctly, there's a Rock Paper Shotgun interview somewhere with an Arkane Studios designer for Dishonored, talking about a dining room in the game: that it must have this many chairs, and this kind of table setting, and that "we make games for the one person who will notice that detail."

Which is a very pretty thing to say.

But I also think they're in a relatively rare position. Arkane is a well-funded, somewhat large group of critically-acclaimed professionals who can spend 2-3 years on a gargantuan product with astronomic production values.

As for the modders, indies, and the smaller studios, I think we have to be smarter about our time. After all, we have too many games to make.

I do want to make a game about arranging chairs for a dinner party, though.