Quake is heavily dependent on using a keyboard and mouse so adapting player controls that didn’t take away from game play was very important. The accelerometer was used to handle player movement by tilting left, right, forward, and backward. The iPhone's ability to track up to 5 individual touches at the same time meant the touch screen could easily support free look while pressing jump or fire.
The graphics were rotated to landscape mode using the full screen resolution of 480x320 and native Open GL ES. Numerous optimizations were added to make full use of the iPhone’s PowerVR MBX GPU. The game currently runs at 20 to 30 frames per second and includes effects like perspective correct multi-textured polygons, trilinear/anisotropic filtering, alpha blended explosions, and depth testing.
The sound was implemented using Open AL and network support enabled using the WiFi connection. The menu system received a button overlay for the arrow keys, escape, and enter buttons along with a keyboard popup for entering things like player name or IP address
- Native OpenGL ES - optimized for the iPhone
- Keyboard and menu - all console commands supported
- Accelerometer controls player movement
- Multi-touch controls - free look, fire and jump
- Multiplayer support using Wifi network
The developer informs us they are currently looking at options for licensing the game from id and publishing it through the App Store.
While the Quake source code and original map files for all of the levels are released under the GPL, signoff from id Software would be required for the game to make it into the App Store. id Software CEO Todd Hollenshead recently contacted us regarding homebrew maverick ZodTTD's announcement that he would be bringing a Quake port to the App Store. Hollenshead informed us that ZodTTD's port would be illegal and not sanctioned by the company and, as such, not allowed in the App Store.
Many of our readers have expressed an eagerness to see Quake running on their iPhone. Here's hoping we see an official release before long.