Click "Sleep" for a dark background.
Click "sleep" again if text isn't dark.

 

Entries in Super Monkey Ball (11)

Monday
Mar212011

Farewell Ba3D 

2D/3D space is the most widely used dynamic across the video game industry. Without question 3D space is the more difficult option to design and program. 3D objects naturally obscure elements behind it. Controls for elements in 3D space traditionally involve 2D interfaces mapped relativistically to 3D movement. This is complex in itself. I've found that 3D controllers controlling 3D interactions can work most intuitively. 3D games are trickier to calculate for cleanness. And this is not to mention how 3D space can be compressed. As loaded as 3D is as a game design topic, there is one serious issue that we're on the verge of solving.
  
  
Does Mario appear to grow? His size never changes!
   
Since the beginning we've always viewed 3D games via 2D screens. Without a 3rd axis to view 3D environments, ba3D (bad 3D) will continue to be a looming, emergent issue. In other words, you can judge the distance of elements vertically and horizontally to the screen, but it can be difficult to impossible to judge the distance between elements into the screen. So we've designed games around the limitations.
  
Now with the US launch of the 3DS just around the corner, I'm writing a farewell to ba3D. With stereoscopic 3D screen technology we can finally see 3D worlds in 3D. The depth of 3D environments can be conveyed just as intuitively as the other 2 axes. To be fair, binocular depth perception is just one technique of many that we use on a daily basis to judge depth. Because our eyes are roughly 3 inches a part, each sees a slightly different image. This is called retinal disparity. We only perceive the scene stitched together as one image.
  
Since the early days of the industry, we've designed games using the monocular techniques of depth perception. Whether 2D or 3D the illusion of depth is created using the following techniques. 
  
  
  Refer to image when reading the following...
  1. Linear Perspective: Parallel lines seemingly converging at the horizon. If you mentally trace the dotted while lines, they'll converge in the distance.
  2. Interposition: When one object blocks another by existing in front or on top of it. Notice how the loop obscures the loop behind it simply because of the viewing angle.
  3. Shadows: Shadows from light sources help us understand the 3Dness of objects in space. The shadow under the R-Wing helps us perceive that its position is not too far off the ground.  
  4. Texture Gradient: More detail of objects up close. The further away objects are, the smaller they appear creating a finer pattern to the eye. Though a solid color, the fading green ground represents a texture gradient.
  5. Motion Parallax: Perceiving how objects at different distances move past you at different speeds when moving. See the video here to observe the relative motion of objects as the player flies past them.
  6. Size Constancy: Perceiving objects in the distance as having the same size despite looking smaller to the eye. The pillars in the image are of the same size. So we naturally understand that the smaller pillar is further in the distance.
  
The problem is all of these techniques are great for creating the illusion of depth, but they're not nearly as effective at allowing us to perceive actual depth in full analog 3D space. The interactivity of 3D video games often times requires knowing exactly where objects are in 3D space not just their relative position. Facets of external timing and visual feedback hinge on seeing depth clearly. This is the area of depth perception that the 3DS will revolutionize. 
  
The following is a list of design features that help us interpret 3D space and/or deal with the ba3D along the Z-axis that runs through the screen. Because of the 3DS option to play games in 2D or stereoscopic 3D, I doubt we'll completely abandon these design elements on the 3DS. The point is we won't need them to play effectively and more intuitively than ever. 
 
  • Super Money Ball 1 & 2 party game Monkey Target (see video). Flight is a full 3D activity. The object of this game is to fly around the ocean and land like a dart on specific targets for points. The environment is vast with plenty of suspended bananas to pick up like Super Mario coins. The game is fairly simple but the 3D is impossible to accurately judge without the aid of several 3D interepting features
    • An arrow that always points to where the wind is blowing and how strong (in mph).
    • A radar that reveals the relative position of the target formations from a top down perspective.
    • An altimeter that displays up to 200 feet/meters above sea level.
    • Your current speed in mph.
  • Halo Series Red Reticle (see video). Guns from a first person perspective naturally simplify the Z-axis (the heart of ba3D). Because bullets fly so far and so fast you rarely have to judge the distance between you and a target in your sights. But it's different for melee attacks. You do have to know how close a target is to your view to calculate when to strike. Some melee attacks (sword/hammer) have larger ranges than others (pistols). To help players know when they're in range and when they're not, the reticle will turn red. The reticle also turns green when aiming at allies. It also helps that there are distinct and lengthy lunging animations that limit your ability to change your aiming perspective. Compared Halo's design to the loose, ba3D, and less clean melee attacks in Team Fortress 2 (or most PC shooters from my experience).
  • Sin & Punishment "slash at the beep" (see video). This Star Fox like shooter locks the player on rails as the "ride" moves through 3D environments filled with set pieces. You can roll through projectiles, jump, double jump, shoot bullets, and slash with your sword. You can only slash objects that are close enough the your character. Because most enemy elements come forward toward the screen from deep in the 3D field, ba3D makes judging when an object is in range difficult. To alleviate this ba3D stress, the designers implemented a somewhat discrete beep that only sounds when at least one slash-able object is in range. 
  • Another genius ba3D fixing design element is the virtual screen guard. Instead of certain projectiles merely moving until behind the screen view and disappearing, they hit an invisible layer in front of the camera view but behind the player avatar. This gives you just a few more ways to interpret how the projectile is moving through 3D space, while preventing the projectiles from obscuring more of the screen than needed when fired at an angle. 
  • Flash Focus Baseball (see video). When playing Baseball in real life you can simply use your binocular vision to judge the pitched ball. Since the regular DS screen cannot simulate this kind of intuitive timing evaluation, the designers included a meter on the side to display the distance of the ball.
  • Tales of Symphonia and Naruto Ultimate Ninja Storm Auto-Aim: The camera view can move all over the place in these games. As the characters and targets move about, there are times when the target is deep into the screen via the Z-axis. Instead of trying to close in and judge when to attack, both of these games feature mechanics or options of auto-aim. Like in an RTS (e.g., StarCraft), the characters will close in and attack when in range according to their AI. 
  • The clean shadow: When an object is suspended in 3D space one can easily lose track of its position. Since the beginning, developers have used shadows cleanly projected directly beneath objects to help with positioning. With the camera angled downward a bit we can triangulate where in the "air" an object in relation to the rest of the environment. From puzzle games like BOXLIFE and Precipice to platformers like Super Mario 64/Sunshine/Galaxy 1&2, shadows have been immensely helpful. This Mario Strikers Charged glowing circle is like a "clean shadow."
  • Curveball (3D Pong): If you present the player with enough 2D views of a 3D space, the 3D can be interpreted. This game is a perfect example of this.