Figure 1. Heavy Gear (click for full-size view).
OpenAL is the audio programming interface inside the games Heavy Gear II (Figure 1) and Soldier Of Fortune, both ported to Linux by Loki Entertainment and available for purchase on-line from Loki's Web site. Demo versions are also available, but the demos are rather large (Heavy Gear II is a 67 MB tarball), so unless you have a broadband connection, prepare to be patient while downloading the packages. And of course you'll need a 3D graphics card with hardware support for OpenGL graphics acceleration.
Chromium BSU (Figure 2) is an easy-to-play top-view scrolling shooter. The game is an open source project and includes the OpenAL library code with the package. (Developers, take note!) Audio support includes overlapping explosions and weapon noises, all to the accompaniment of a simple looping soundtrack. The positional effects are especially striking. Once again, you'll need a 3D graphics card for the game's OpenGL graphics.
Figure 2. Chromium BSU, an open source game project (click for full-size view).
Blender, a multi-platform 3D rendering package, has incorporated OpenAL as its audio library. Among its other attractions, Blender is a powerful game animation studio, complete with sound control on some of its supported machines. Adopting OpenAL is a very good move for Blender and great news for its users. Designers will no doubt find exciting and novel uses for Blender's new tools for combining audio and visuals, and the OpenAL API should ensure cross-platform 3D audio compatibility, helping developers more easily reach a wider range of users.
The GNU 3DKit is a 3D rendering framework for GNUstep, a GNU project to supply a free replacement for the NeXTstep operating system. The 3DKit uses OpenGL as its 3D graphics rendering engine and OpenAL for 3D audio. Support for 3D audio was apparently designed into the package from its inception, and its RenderKit core library provides access to the OpenAL services.
A report in the Linux Journal stated that the Corel Corporation plans to include OpenAL in its Corel Linux distribution, presumably to act as a general sound service API for Corel packages.
Unfortunately, at this time there are no games with hardware-accelerated OpenAL support. Nevertheless, the games do give the player a good idea of what OpenAL can do as a generalized game sound server, and I highly recommend testing them on your system. They're great games anyway, so you're sure to have some good fun with them. Meanwhile, Creative Labs' presence and input to the project certainly indicates that hardware support for OpenAL is sure to arrive soon.
Next: OpenAL Development: The Programmer's View
Dave Phillips maintains the Linux Music & Sound Applications Web site and has been a performing musician for more than 30 years.
Discuss this article in the O'Reilly Network Linux Forum.
Return to the Linux DevCenter.
Copyright © 2009 O'Reilly Media, Inc.