Introduction
A video game system comprises a platform, a display, one or more I/O interfaces known as controllers, and software. The platform can be a computer or a dedICated console; the display, which may be housed with the platform, is often audiovisual; and controllers— used to play the game, can range from mice and keyboards, to panel-bound buttons, scroll wheels, and joysticks to two-handed “gamepads” and freely moving wireless devices that simulate the physical motions involved in the game.
In recent months, new generations of sophisticated gaming hardware containing high-end computer systems using dual-core processors have been introduced. Furthermore, the three new console systems currently competing for the market’s attention have more computing- and graphics horsepower than do many computers. For serious gamers, multi-GPU (graphical processing unit) video cards are viewed as a worthwhile investment. Of all the advances in processing, graphics, sound, and even the games themselves, the most momentous change is the introduction of intuitive, motionbased game control. This change is being driven by a new generation of very low power motion sensors built using microelectromechanical systems (MEMS), the same accelerometer technology first used in the automobile industry for airbag crash sensing. MEMS-based 3D motion-sensing game controllers are influencing not only how games will be played, but more importantly, they are strongly influencing how games will be designed.
This article reviews the current capabilities of gaming systems, describes how game elements can enable—or prevent—intuitive game design, and how existing control hardware limits game design. Also discussed are: the operating principles of the 3D motion sensors used in the next generation of gaming systems, how motion sensing decreases the learning curve for beginning and expert gamers, and the important specifications and development principles with which game developers need to be familiar.
Design Elements That Limit Intuitive Gaming
“Of course, when playing a game, the nearest thing to the player is the controller. The controller should therefore be regarded as an extension of the player rather than as part of the console. I always bear in mind the importance of the fact that the player will have far more contact with the controller and UI [user interface] than the console itself.”
—Akio Ikeda, responsible for accelerometer hardware in the Nintendo Wii™, in an interview with Satoru Iwata, Wiilaunch website, Summer 2006.
Each game’s plot assumes that the player has some previous knowledge of the effects—and perhaps strategy and tactics—of picking up a card, rolling a die, or hitting a button. Often, this is suggested to the purchaser in the game’s “recommended age” on the package. For example, the game blackjack (or “21”) makes the assumptions that a beginning player has, or can easily acquire, the following knowledge:
how to add
the concept of comparison, such as “less than,” “equal to,” and “greater than”
familiarity with cards, and their numerical values; in particular, the ace card, which has no number label on it—and has a choice of two values in the game.
once players start to consider blackjack as a gambling game, learning risk and reward, comparing to a dealer’s “hand”—whether 21 or some other value, and tactics such as doubling-down, they grow from beginner to expert. In blackjack, different user interaction formats don’t change the game itself, whether using a physical deck of cards or the position of a mouse on a computer. The effect of the action “Hit me!” is always the same, and the target is always 21.
Virtual gaming environments can radically change how a player interacts with a game, especially where speed and dimensional motion are involved. The nature of the interaction between the controller and the user interface (UI) historically has levied unnatural constraints on the user experience. Consider, for example, passing in the basic U.S. Football video game, in which a player chooses to throw a ball to one of three virtual players, using a keyboard or game controller (Figure 1).
Standard controllers and interfaces weakly replace intuitive natural spatial relationships. Figure 1 shows a progression of throwing a ball (green area in (a)) to one of three players, associated with buttons X, Y, and Z. In (b), the thrower elects to pass to the player at the right, using button Z. In Figure (c), the thrower’s square no longer has the ball, and player Z (now green) has received the throw. This is of course very different from playing a game on a real field—when passing to a teammate, you don’t consider moving a finger hovering over a Z button, you would just physically pass the ball to the right. So someone who plays many sports, but has not played in a virtual environment, would have to learn to associate throwing with pressing the Z button (in this version of the game).
Thus, instead of transferring one’s own real-life experience to the virtual world, the game player must learn platform-specific skills in order to play. This impedes the novice player and limits the marketable audience for a game to those who want to spend the time to learn a new skill that is not necessarily useful in the real world. Almost anyone who meets the stated criteria for blackjack can sit down at a blackjack table anywhere and play for the first time, but very few inexperienced electronic game players could pick up a game controller as a beginner and immediately play electronic football against another player—without feeling nervous or overmatched. The difference is that the physical skills that blackjack requires in any medium are simple, intuitive, easily learned, and fun.
Design for Intuitive Gaming: Historical Use of Motion
“The motion sensor provided an intuitive, easy-to-understand way to operate the machine, which goes really well with our portable game consoles. We believe a wide range of age groups will also enjoy playing ‘Yosshie-no Banyu-Inryoku.’”
—Satoru Okada, General Manager, Research & Engineering Department of Nintendo, quoted in Analog Devices press release introducing iMEMS ADXL2021 Yosshie-no Banyu-Inryoku application, 2004.
Today’s biggest news in gaming is the incorporation of motion sensing in mainstream console and game design. Both the Nintendo Wii™ and Sony PlayStation 3™ games feature MEMS motion sensors. The bigger impact, though, is that motion sensing is now driving the actual game design as well as reporting a set of motions in an existing game format. Nintendo is using an Analog Devices ADXL3302 three-axis iMEMS sensor to give the revolutionary “Wii ™-Mote” controller 3D motion-sensing capability.
This is not the first time MEMS motion sensors have been used in controller design, however. Microsoft and Logitech pioneered the idea in 1998 with the SideWinder® Freestyle Pro and WingMan Gamepad Extreme game controllers, both featuring an Analog Devices ADXL202 two-axis iMEMS sensor. The Freestyle Pro won “The Most Promising New Peripheral’ award at the Electronic Entertainment Expo in 1998.
At this stage of game development, few designers used motion sensing as an intrinsic element of game design. Two-axis tilt-sensing simply replaced the D-pad (direction pad) if the user wanted to control the game with tilt instead of button presses. And tilt could do some breakthrough things to add to the game-playing experience: As you lean the controller back, you could pop a wheelie on a motorcycle in a riding game. In a flight-simulator, tilting your controller left and right could cause a Star Wars X-wing fighter to swoop left or right with your motion. In driving and flying games, experiences that had relied heavily on the D-pad for control benefited the most from this type of tilt motion control. But the concept, not an integral part of the game design, did not find major consumer traction. The increased cost of the motion-enabled controller and the lack of true motion-based experiences limited the appeal for those Microsoft and Logitech products.
Nintendo was the first to codesign hardware and a game concept with motion sensing, in their Yosshie-no Banyu-Inryoku and Koro-Koro Kirby (Kirby Tilt ‘n’ Tumble) GAMEBOY titles. These innovative games proved that a market existed for intuitive motion-based gaming. Both incorporated ADXL202 accelerometers in the game cartridge itself, using tilt to move the character in a way many ages and skill levels could understand. Koro-Koro Kirby uses the principle of a marble on a tilting table, a toy many children and adults have played with in real life. When transferring this game experience to the virtual world, Nintendo required no new skills to be learned, as the player controls Kirby, the marble, with physical tilt. The MEMS accelerometer uses so little power that it could be used as the primary control for the entire course of game-play in a portable application, without excessive drain on the battery. The cost of adding motion using IC accelerometers had also reached a point where they would not impact consumer prices. These titles appealed to a wide audience, were intuitive, easily learned, and fun. Hundreds of thousands of copies were sold worldwide.
Design for Intuitive Gaming: Developing Motion-based Applications
“Since I’d worked on products using acceleration sensors before, I had a general idea of the characteristics and limitations I could expect from this technology. From that experience, I already knew that we would need an absolute reference point near the TV in order to improve reliability of control”.
—Akio Ikeda, in an interview with Satoru Iwata, Wii Launch Website, 2006.
The first step in designing any game is to generate the core plot and user concept. This includes the virtual world that a UI designer will create, the goals for each player, and the interaction the player has with the user interface. The most basic element of intuitive design is to capture an activity someone already does in the real world and bring it into the virtual world, where creativity, different challenges, and fantasy can exist—but the player does not need to learn any new skills to play. The translation of physical activity to control starts with a motion sensor. There are a few major categories of ways to use sensor data in game design, but they all start with the fundamentals of how motion sensors work—accelerometers in particular. [See Principle of Operation.]
The most important thing to remember is that accelerometers measure acceleration. Anything that includes motion, including vibration and shock, can be measured by the accelerometer, so each application has different accelerometer requirements and limitations.
Motion Gaming Application Categories
Simple Tilt Threshold
Kirby Tilt ‘n’ Tumble is a prime example of using tilt thresholds. Using tilt is the equivalent of using Earth’s gravity field as a 1-g reference acceleration along the vertical (Z) axis (depending on location, g is approximately 9.8 m/s2, or 32 ft/s2). The X and Y axes will each experience 0 g when the device is perfectly level (Figure 2).
When the player tilts the controller, the game designer wants to know if the amount of tilt has crossed a particular threshold. The method used to measure tilt is an inherent trigonometric relationship. The X and Y outputs of an accelerometer as a function of the tilt angles, θx and θy (the angles the X and Y axes make with the horizontal), are proportional to g sin θx and g sin θy.
In a game like Tilt ‘n’ Tumble, where the player is trying to imitate the effects of real gravity, it’s not necessary to know the actual angles (calculated by inverse trigonometric functions); the device’s outputs physically model the forces affecting virtual marble movement.
For this game, which depends on just the X- and Y-axis angles to the horizontal, a three-axis accelerometer is not necessary. In fact, with the X and Y axes horizontal and the Z axis vertical, the device’s Z output is proportional to the cosine of the angular deviation, θz, from vertical—not very useful in this application without further processing.
Historically, Kirby used an XY accelerometer. Microsoft’s Sidewinder Freestyle Pro used an XY sensor to measure tilt to control the rate of left-right up-down action on the D-Pad. If the application only needs tilt, a 2-axis accelerometer is the low-cost alternative.
Gesture Recognition: User-Generated Acceleration
Interested in more than gravity measurements? Games such as Wii Sports Tennis, as demonstrated at the 2006 E3 Media and Business Summit, use player-generated motion that far exceeds the acceleration of gravity. For applications of this sort, the ADXL330 has a measurement range of ±3 g minimum in each axis. Unfortunately, a game concept that involves high-speed motion, such as a golf swing, could exceed the measurement range of many low-g accelerometers. To get a sense of acceleration for an activity, if the arm is considered to swing in a circle around the body, angular acceleration is:
A = v2/r
with components in the x, y, and z directions. If the maximum acceleration temporarily exceeds the device’s measurement range, design choices include using an accelerometer that has higher maximum range, but sacrifices resolution, or simulating the overload condition—which requires a measurement of when the overload starts and when it ends. This requires very linear performance over the entire range, right up to saturation.
User-generated motion is difficult to model, because human players have anatomical differences and intuitively move in different ways with the same intent. Game developers require a great deal of testing and tweaking to model this interaction successfully. Recording a large variety of motions and generating motion-matching algorithms and thresholds in a testable model has proven to be the most productive approach.
Position Measurement: Integration of Acceleration
A challenging question facing designers is whether accelerometers can be successfully employed to measure position changes, since position is the double integral of acceleration with respect to time. The obvious approach is to doubly integrate acceleration over appropriate periods of time. Along the X axis,
For constant acceleration, a,
Thus the X position at any time depends on the initial position, the position gained over time at the initial velocity, and the square of time.
Integration is reasonable over relatively short times. For long periods, the risk is in the t2 term. Errors increase with the square of time; the error after 1000 seconds is 1,000,000 times greater than at 1 second. Any small offset errors in the acceleration measurement, especially with consumer-grade devices, will soon produce an intolerable error level, and eventually (hours, or even minutes) drive the computed position to its limits. Even a noise-free accelerometer with no error will have other problems integrating over long periods of time. For example, the human holding the controller may hit the controller against an object or drop it to the ground, causing thousands of gees of shock, driving the accelerometer output to its limits.
Nintendo has solved this problem in the Wii by using a positional reference in conjunction with the accelerometer. By correlating the position to the reference, Nintendo can limit the length of integration with periodic resets, thus appropriately reducing error growth.
Engineering an Intuitive Motion-based Game: Selecting Sensors
“I sympathize when people complain about how un-user-friendly the old controllers can be; I can remember trying to master the mouse-and-keyboard interface when I first played Marathon, and then the two-joystick setup for Halo, and it was a serious challenge ... By contrast, the Wii controller is a snap. Nintendo really has removed a major barrier for nongamers. There’s almost no learning curve at all.”
—Lev Grossman, responding to reader feedback to his article, “A Game for All Ages,” Time magazine, May 15th, 2006.
The first sections of this article described some of the ways acceleration data is measured and used in game control. The problem with real-world accelerometers, however, is that they do not perform perfectly, they occupy space, they require electrical power, they are subject to changing temperature, and they can be subjected to abuse. This final section provides some insight into the performance characteristics gaming requires, what to expect from a sensor vendor, and how to test these parameters.
Linearity
The Newtonian world is linear and motions are linear, so accelerometers should be linear. Linear behavior, across the full-scale range, is essential because humans expect predictable response for intuitive gaming. If you move your arm twice as fast, the on-screen action should be twice as fast. If the actual speed is faster or slower, you have to learn nonlinear motion as a special skill, making the game nonintuitive. Tilt games that unexpectedly jump from one angle to another without the corresponding user motion can be jarring.
Testing linearity across the ±1-g range is relatively simple. Using a rotating socket, each axis can be tested in line with gravity, in opposition to gravity, and at in-between positions, noting the angle and output acceleration at each measurement point. Beyond 1 g, shakers and rate tables become necessary. Accelerometer vendors can furnish statistical data on linearity to validate data sheet values. More complex, but possibly faster, approaches use ac motion tests and total harmonic distortion measurements to correlate directly to linearity.
Power Consumption
Must consumer MEMS motion sensors are used in low-voltage wireless devices. Reduced power consumption in an accelerometer can free up the power budget for more robust communications, cheaper components in other parts of the design, and longer battery life. Low-power devices such as the ADXL330, which typically draws 200 mA from 2-V supplies—even without power-cycling—help in developing wireless controllers that, in addition to having long play times, are also free to move in the natural and intuitive ways gamers want to use motion. Accelerometers with fast turn-on times allow power to be cycled, thus saving even more power. The game designer can turn them on and off, sampling at the rate the human player is expected to move. A 100-Hz sampling rate is suggested as a floor for smooth motion gaming, enabling 50 Hz of bandwidth.
Temperature Performance
Temperature performance is critical, considering that the motion-sensitive device is most often held in a person’s hand, thus getting much warmer during the playing time. Excellent temperature behavior is also important because performance must be predictable in any play environment, whether outside or indoors. Consoles may even be used at low- emperatures in automobiles equipped with audiovisual systems.
The most critical impacts temperature performance can have on game play are linearity of the zero-g bias over temperature, and the temperature coefficient of sensitivity. The zero-g output voltage is essentially the dc offset of the device. Many accelerometer vendors publish “box-specifications” on zero-g bias, declaring an arbitrary range of error through which the output can travel. Some accelerometers use a temperature sensor to provide digital temperature compensation. While these techniques can keep the offset within a range, step discontinuities often occur when the output is swept over temperature—sometimes up to 25 mg, corresponding to an error of over 1 degree in tilt applications. Testing this performance is as simple as sweeping the accelerometer through a range of temperatures and monitoring the output. This test is highly recommended; some sensors can produce surprising results.
Robustness and Self-Test
Because shock, vibration, and dropped controllers can cause thousands of gees of input to the accelerometer, a robust mechanical sensor design is necessary. The ADXL330 is designed with the same mechanical features as are used in harsh automotive environments for functions such as vehicle stability control. If something does go wrong, a good MEMS sensor should have full mechanical and electrical self-test features to help diagnose a problem before the player even picks up the controller.
Going Forward
Historically, standard gaming controllers limited intuitive gaming, requiring a player to learn specific control skills. As games progressed, developers started to translate real-world experiences into virtual-world gaming. Now, the latest approaches in intuitive gaming use motion to enable a new generation of designs, making games more intuitive and fun. This article has presented a foundation for using accelerometers in game controllers, including operating mechanisms, measurement techniques, and specific parameters that directly affect gaming performance, price, reliability, verification, and test.
Accelerometer—Principle of Operation
The motion sensors typically employed in the newest games are 3-axis accelerometers—three-dimensional motion sensors with electrical outputs corresponding to acceleration components in the x, y, and z directions. Figure A shows an electrical block diagram of a complete 3-axis acceleration measuring system, the ±3-g ADXL330, a tiny (4-mm-square by 1.45-mm-high) integrated circuit. It operates on voltages from 1.8 V to 3.6 V, drawing as little as 180 mA. It can sense both dynamic (motion, shock, and vibration) and static (gravity- force) acceleration.
The sensor is a polysilicon surface-micromachined structure built on top of a silicon wafer. Polysilicon springs suspend the structure over the surface of the wafer and tend to resist accelerating forces. The structure’s deflection is measured using a differential capacitor that consists of plates—attached to the moving mass—moving between paired independen fixed plates, at voltages driven by out-of-phase square waves. Acceleration deflects the moving mass and unbalances the differential capacitor, resulting in a square-wave output with amplitude proportional to acceleration. Phase-sensitive demodulation techniques are used to read the magnitude and polarity of acceleration.
Each demodulated output is amplified and brought off-chip through a 32-kV resistor. External capacitors, chosen by the user, provide filtering and set the bandwidth. The device also has a self-test facility to detect malfunctions. Figure B is a photograph of an accelerometer chip.
参考电路
- ADXL202
- ADXL330