Game Controls

Observational Game Theory #1: The Problem of Perspective

Welcome to my first full-on gaming post here on the blog. I wanted to finally get this off my chest as I know it’s a regular problem with gamers, so as you can imagine, it might be a little rambly. And don’t mind my crappy drawings, it’s just that the only pen tablet I have is my Nokia N800 and it’s rudimentary Sketch app, so I can be only so precise drawing on it.

The question is: When you push up on a joystick, where do you think you’re going?

Unless you’re playing a 2D-style title, the answer is always “it depends.”

There’s two control scheme issues with games — which I’ve dubbed Craning and Twisting — and they all both with perspective. They both deal with the same subject, that being what you believe you are controlling. The simple answer is always “the character” but the complex one has two interpretations: you either control the character’s body, or the character’s view.

This only becomes an issue when you can’t immediately discern which one is active.

This first example shows Craning as the classic problem of putting flight controls into games:

Photobucket

To savvy game players, the “inverted” or “pilot” controls on the left make immediate sense. Pushing up on a joystick pushing the nose of a plane down, thereby making the world past the viewport seem to scroll upwards as the plane dives. Of course, the plane is now moving down, the opposite of the literal stick movement.

“Standard” ordinal controls would dictate that pushing up should move the plane up, so the focus of the user actually becomes the the reticle of the gun. By pushing on a joystick, the movement is translated into a 2D-like command of moving the reticle in the matching direction. In this case, pushing up moves the reticle up (by pulling the nose of the plane up, causing the world behind to appear to scroll downwards).

But the joystick evolved as a metaphor for the pilot, a body, a standing object — e.g., pulling back = leaning back. Which is the right mental model here? Do I control the body of the character (lean forward/look down, lean back/look up) or his eyes (eyes up/look up, eyes down/look down)?

Now let’s look at the second example, Twisting, shown as rotation in a 3D platformer:

Photobucket

Planar movement in a 3D platformer usually comprises of a two-joystick scheme, one to control movement and the other to control view. Over time, this has settled into a traditional scheme of the left joystick controlling literal movements of up/down/left/right in relation to the game environment, and the right joystick handling “looking” around the character with a camera.

But really, we’re still talking about the body/eyes issue, here. In a game where I don’t have to worry about body rotation (because pushing left always moves the character left on the screen) the question becomes what kind of rotation is the camera performing?

Most of the time, cameras rotate around the character, as shown on the left. Like rigging a real camera in orbit around a person, pushing left on the camera joystick would move this suspended camera left, making the world appear to scroll from right to left.

This seems to be a contentious control scheme, as I’ve been seeing more and more games take a more first-person view for these third-person view titles. I’ve added a reticle on the right to help explain, although it is almost never present in actual titles. But as you can see, the popular view these days is to move what feels like the character’s view to the left, causing the world to rotate/scroll left to right.

This works fine when the character is facing forwards (his back to the player), but in 3D platformers, character location has nothing to do with camera, and this breaks when the character is facing backwards (eyes to the player). Without a reticle to focus on, players may focus on the character’s view (and desire to turn the character, not the camera, around) and in this orientation, the directions are swapped.

Sadly, unlike flight controls, this is rarely a user preference, and sometimes you are simply stuck with what the developer put into the game. It’s something that I recently muddled through in Uncharted for the PS3, but ultimately got used to.

Back to the title of the post…

The problem is perspective. More specifically, are you in the body of the character, or the head of the character? Do you control how he sees, or how he is observed? This is all managed by proper camera design, and the proximity of the player’s view to the person they are controlling. The closer to the character, the more the player will feel as if they are controlling his or her view, Craning or Twisting the figure as needed. The further away the camera is from the character, the more the player is an observer, simply pushing the character and rotating the game space around.

The worst offenders in games are those that can’t manage a good, constant distance (or as constant as can be when dealing with clipping and camera obstruction issues) from the character, or don’t lock a perspective behind the character causing players to change their model of what they are controlling at a rapid pace when the game isn’t changing a thing. When a character faces the player, the player can only see what is behind the character and a model is broken — and pushing the “eyes” left doesn’t make sense unless you take the extra thought to place yourself within this inverted space, like combing your hair in a TrueMirror.

In the end, what matters is consistency. As long as we can consistently observe what we are controlling, we will learn the language of necessary motions to make that object move where we want it to.