Friday, April 25, 2008

2D vs 3D: Lost in Space

I started playing through Metroid Fusion for the GBA yesterday. Being a fan of Metroid games, I've developed what I call the "Metroid Eye." Essentially, this technique allows me to play through Metroid games effortlessly while seemingly stumbling across every secret as if powered by serendipity. After playing so many Metroid games, I've internalize the creator's style which includes how the level design unfolds, how the abilities and challenges progress through counterpoint, boss types and attack patterns, and where they choose to hide powerups. The Metroid series is notorious for hiding powerups.

Some powerups are easily obtainable usually consisting of the abilities that are essential for progressing through the game. The developers make sure that these powerups are as easy to get as possible. Others, however, can be hidden behind rocks or other structures that must be blasted away to reveal their location. Others still can't be flushed out with randomly aimed firepower. There are walls that appear to be solid, but actually have a small tunnels running through them that the player can access. There may be nothing to clue the player into these hidden passageways except a small fish that swims back and forth out of the hole. In Metroid games, the enemies are organically placed within an environment to both threaten the player and to give a natural cover for certain secrets. What is most interesting about using the denizens to cover up a secret is, they also reveal the secret. Once you have the Metroid eye, it's like hiding a secret behind a bullseye.

Playing Metroid reminds me of how developers used to use the flat 2D perspective of their games to hide things. In Super Mario World, there's a hidden switch in the Forest of Illusion, where players must swim through a solid wall to find the hidden area. In this case, the fish hint at the secret by swimming through the wall. In Final Fantasy 6, there are specific moments when players can walk through the dark walls that surrounded a home only to find a secret room where treasure was stashed. Players also had to walk through walls to get to Setzers air ship. And for those of us who bravely ventured into Cyan's past to obtain his ultimate weapon, there is a section on the train where one must circumnavigate an obstacle by walking slighting into and through the walls. That puzzle had me stuck for what seemed like hours when I was a kid. But after conquering it, I never looked at 2D the say way again.

With all 2D games there is a certain level of 3D interpretation. Even with a game like pong, we assume that the ball and paddle are sliding on top of and across the black space. It's only natural. You would be hard pressed to find an individual who actually thinks the ball is being drawn repeatedly through the progression of converted black space to white space in small quantifiable bits (pixels). We're all human, not computers, and as humans we've been conditioned to perceive the world a certain way. Our eyes work together to create 3D space in our minds from two 2D images. Our perception of the 3D world is interpreted in our minds, but we also created 3D where there may be none. When we see a painting, we can interpret the light and dark areas as light and shadow created in a 3D space. Likewise, when we see Mario slide out from under some bricks because he was too large to walk under that space, we don't think he's melding with the bricks. We simply think that he was too big to fit and now he's being squeezed out.

The engagement from interpreting 2D games this way is something that I don't think gamers get from 3D games. When you render a room in 3D, furnish it, and add realistic physics, what's left to interpret? The room would be just like your own room. Furthermore, two problems are inherently added to 3D games: perspective and volume.

With a 2D room, all the information is set directly before the player. Everything the player must consider is within sight and neatly arranged (assuming the perspective isn't zoomed in or scrollable). Even if this player gets stuck, he/she can rule out possibilities by systematically checking the area of the room.

In a 3D room however, the player can only look at a small area at a time. Whether the game is in first person or third person, you can't see behind you. Getting the whole "picture" of the room requires changing the perspective. This alone substitutes the interpretation found in 2D games for memorization and spacial reasoning. With every change in perspective, the room is slightly different and the player sees the world in a slightly different way. And if the player wants to systematically explore a 3D area, the added vertical dimension multiplies the amount of work the player would have to do.

Ultimately, I've found that 3D games tend to hide and conceal things like in real life: simply behind something, out of the way, or obstructed from view somehow. And if you're human (something I still assume by the way), you've probably lost something in your house at some point in your life. And I bet searching for that item was not fun. It can be very frustrating the number of ways to inadequately look around desk. Because it exists in 3D space, it's easy to miss something because you didn't get all the way to the ground to look under it, or you didn't stand high enough on your toes to look over it. Sometimes, there's just too many places an object can be in a 3D world.

At this point in the discussion, it's necessary to highlight a few games that work well with 2D and 3D elements. Perhaps the true key to designing 3D games is still in the 2nd dimension.

  • Echo Chrome actually plays off of 2D interpretation. Though the game world in in 3D, by changing the perspective from a fixed viewpoint, the player is actually changing the way the game appears and functions in 2D. Switching back and forth from 3D manipulation and clever 2D interpretation is the heart of the game.

  • Smash Brothers Series: These games are rendered with 3D graphics, but play entirely on a 2D plane. The games also features many animations and attacks where the characters appear to phase into the 3D plane. If you look closely, all the rolls and ground dodges play with 3D. Though the fighting interacts on a 2D plane, the hitboxes are drawn in 3D. This makes for truly analog attacks and moves in a 2D fighter. Basically, as Link's sword swings around to hit Mario in front of him, the sword strike is actually swinging around in 3D space to hit the target. This goes a long way in understanding the game because it gives a clean form to the function of 2D attacks. In Brawl, Assist trophies like Andross and Nintendogs also present strange moments where players have to convert 3D space into 2D space.

  • Super Mario Galaxy: This game is the greatest 3D game ever made considering how it presents 3D space in the game, and how players interact in 3D space. It is so well designed even kids can pick up the game and make their way through Battlerock Barrage, an intense level with high flying projectile dodging action. Those with a keen eye will realize that Galaxy plays like a 2D game. A small blank planetoid creates an infinite plane that Mario can run along. It's only when he jumps from planetoid to planetoid that the game progresses. Sound familiar? Small simple planes where only jumping allows players to progress? Sounds like Super Mario Brothers to me and all subsequent Mario platformers. Couple the amazing design with the ability to feel your way through 3D space by shooting off star bits that function like fingers stretching into the game world while dynamically interacting with any multiple gravities present, and the game simply conquers all other 3D games.
To continue this topic, it would be interesting to compare the 2D Metroids to the 3D ones. I don't find it surprising that many of the 3D Metroid's powerups are hidden in 2D gameplay sections. Using 2D is a very versatile, powerful, and most importantly clean perspective. Perhaps if I ever get around to my Metroid study.... Until then, what if 3D games hid stuff like this.....

No comments: