March 20, 2019
Hot Topics:

Cross-Platform Game Development for C++ Developers

  • August 5, 2005
  • By Victor Volkman
  • Send Email »
  • More Articles »

Some Other Game Engines to Explore

Take a whirlwind tour of some other open source gaming engines.

ALLEGRO (Allegro Low LEvel Game ROutines)

Allegro is an open source portable library mainly aimed at videogame and multimedia programming. Allegro was created by Shawn Hargreaves (lately of Climax) and has grown to be a capable cross-platform gaming system for Linux, Windows, MacOS, MS-DOS, and a half-dozen other platforms.

In addition to a super 2D graphics library, it also offers easy access to the mouse, keyboard, joystick, and high-resolution timer interrupts. Allegro doesn't encapsulate or replace OpenGL, but you can learn how to integrate OpenGL in Allegro apps by visiting their extensive developer's site.

There are about 700 different game projects published with Allegro, the top two categories of which are Arcade and Puzzles. I particularly liked the remake of the classic Zaxxon arcade game (see Figure 3).

Figure 3. Cool Remake of Zaxxon

Irrlicht: Lightning Fast Real-Time 3D Engine

The Irrlicht Engine is a cross-platform, high-performance real-time engine written in C++. You can choose Direct3D, OpenGL, or software-based rendering. High-end features include dynamic shadows, particle systems, character animation, indoor and outdoor technology, and collision detection (see Figure 4). Irrlicht supports Windows and Linux and offers language bindings for Java, Perl, Ruby, and others. Gaming pro Nikolaus Gebhardt does it all with a little help from his friends.

Figure 4. A Breathtaking Scene in Irrlicht

ClanLib: Designed for Multiplayer Gaming

ClanLib delivers a platform-independent interface to write games that have a common interface to low-level libraries such as DirectX and OpenGL. You can target ClanLib apps for Windows, Linux, and OS X with a single set of sources. ClanLib includes an extensive sound library, 2D collision detection, animation, GUI framework, and network libraries. Figure 5 shows a scene from the game XenoHammer.

Figure 5. XenoHammer Screenshot

Book of the Month: Dewhurst Does it Again

With all the programming-for-idiots and teach-yourself-in -"X"-days book series these days, it's refreshing to see something for the long-suffering intermediate C++ programmer. Stephen C. Dewhurst's C++ Common Knowledge comes to the rescue with 63 easily digestible items that satisfy your hunger for doing things the right way in C++.

The book leads off with several items on pointers—what they are and aren't—which can be vexing for people who didn't grow up on a diet of C code. It quickly leads into more complex topics, many template-related, including partial specialization, generic algorithms, substitution failure, argument deduction, and template template parameters.

I'd bet my last two bits that every C++ programmer would learn something from this slim volume.

About the Author

Victor Volkman has been writing for C/C++ Users Journal and other programming journals since the late 1980s. He is a graduate of Michigan Tech and a faculty advisor board member for Washtenaw Community College's CIS department. Volkman is the editor of numerous books, including C/C++ Treasure Chest and is the owner of Loving Healing Press. He can help you in your quest for open source tools and libraries; just send an e-mail to sysop@HAL9K.com.

Page 2 of 2

Comment and Contribute


(Maximum characters: 1200). You have characters left.



Enterprise Development Update

Don't miss an article. Subscribe to our newsletter below.

Thanks for your registration, follow us on our social networks to keep up-to-date