Maximize connectivity, power, and bandwidth management when designing for mobile applications.
By Rajshree Chabukswar, Cody Northrop, Adam Lake, Ann-Charlotte Joseph, Chuck DeSylva
The gaming platform is evolving. A few years ago, very few developers had to consider issues related to mobile game development. Times have changed. Venture out to a local coffee shop, and you are likely to see several people working away on their laptops. Some of them are doing office work. A few others are enjoying reading their favorite blogs and news feeds. Others are playing games. These games come in several forms. Sometimes these are casual games. Often they are massively multiplayer online games (MMOGs) that require the latest generation CPU and graphics technology.
These mobile devices are bringing new capabilities to bear and creating new usage models that developers need to address during the development process. For example, hardware vendors Dell (the XPS* series) and Alienware (the Area51* series) are delivering award-winning, high-end mobile gaming platforms for consumers. These platforms typically have a very high-end mobile graphics solution, sufficient memory, and a high-end mobile CPU for delivering a phenomenal gaming experience for the gaming enthusiast on the go! Developing with these users in mind opens up a new market for an independent software vendor (ISV) to gain additional revenue. Additionally, this market is expected to increase over time as the gap between desktops and laptops decreases.
Figure 1. Estimated growth of desktop vs. mobile (in millions of units), Source: Gartner Quarterly PC Forecast, March, 2005
This document serves as a handbook for issues related to the mobile gaming experience. Intel provides an SDK and run-time for mobile application development, the Intel® Mobile Platform Software Developers Kit, and this is the preferred mechanism to enable games for mobility. When the application is not installed on a machine, this developer’s guide provides alternative mechanisms for mobile-aware applications. The focus of this document is gaming using laptops, but many of the principles apply to any mobile device, whether it’s a cell phone, PDA, or other mobile device.
At the highest level, there are three issues concerning mobile gaming. While each of these issues is present on desktop machines, mobile applications need to be especially aware due to the increased likelihood of change in the status of each of the following parameters in mobile environments:
Connectivity: Refers to issues related to the connection of the device to a network and other peripherals. These can be wired or wireless connections.
Power: The use of batteries or power outlets, which modifies the user experience based on the current power usage of the system.
Bandwidth management: Can be classified as a subtopic of connectivity. Issues here include the adjustment of the user experience when bandwidth drops or a wireless connection experiences interference and is temporarily out of service.
Developing for mobile applications requires being able to adjust to abrupt changes to any of these domains, and this guide will assist the developer in designing with these issues in mind.