{logo}

December 2004
Volume 22 Number 12

FEATURES

The G3D Graphics Engine

Morgan McGuire
G3D, a commercial-grade 3D engine used in games, research, and simulators, is built around OpenGL and focuses on real-time hardware graphics.

Building GIS Applications

Sam Krasnik
Many modern graphical applications require geographic maps to be displayed, either as the focus of the application or as a background for displaying static or dynamic objects on top of the map.

Flash, Ming, & C++

Darren Cook
Flash is a vector graphics technology widely used for animation and sound. Darren generates Flash files using C++ and the open-source Ming library.

Constrained Value Types Using Policies

Christopher Diggins
Here's a general-purpose constrained value type that can be easily modified with policies to adapt to your specific needs.

Ranges, Part 2: Iterable Range Adaptors, Algorithms, and Composition

Matthew Wilson and John Torjo
Ranges are a powerful concept, and using them makes code more compact, easier to understand, and less error prone. In addition, Iterable Ranges make STL containers and algorithms even easier to use.

Atomic Reference Counting Pointers

William K. Reinholtz
Reference counting pointers provide a powerful and convenient way of managing heap memory in C++.

COLUMNS

Sutter's Mill

Herb Sutter
When it comes to C++ and link binary compatibility, there are things that the Standard doesn't tell you.

Generic <Programming>

Andrei Alexandrescu and Maged Michael
By maneuvering carefully between thread-private and thread-shared data, it is possible to devise a lock-free algorithm that gives strong and satisfactory speed and memory consumption guarantees.

C++ Made Easier

Andrew Koenig and Barbara E. Moo
"Advanced C++" refers to what you learn after you've mastered the basics to the point that you don't have to think about them anymore.

Conversations

Herb Sutter and Jim Hyslop
When are two variables really two variables? Ask the Guru.

Programmer's Book Review

Paul Martz
GPU Gems, edited by Randima Fernando, is a collection of papers by industry experts on how to render a broad range of computer graphics effects in real-time using the graphics processing unit.

DEPARTMENTS

Editor's Forum

New Products