> Reference Database

Languages/C & C++

.NET  7
Artificial Intelligence  7
  Group behavior  2
  Path finding  16
    A* and its derivatives  6
  Pattern recognition  1
  Steering behavior  2
  World interaction  4
Audio  0
  DirectX  8
  DSP  5
  Ogg Vorbis  2
  OpenAL  1
  Windows  1
Computer Science  2
  Algorithms & data structures  12
    BSP trees  8
  Encryption  12
  Randomness & noise  11
Data storage  4
  File formats  14
    Image  10
  Resource files  2
Game Development  20
  Cheat & crack prevention  10
  Input  3
  Timing  4
Graphics  27
  Character animation  6
  DirectX  24
    Optimizing  8
  Illumination  5
    Deferred lighting  7
    Global illumination  8
    Lighting models  6
    Screen Space Ambient Occlusion  4
    Shadow maps  18
    Shadow volumes  15
  Image processing & synthesizing  19
  Non-polygonal rendering  3
    Ray tracing  3
  OpenGL  12
  Particle systems  7
  Shaders  32
  Simulation  4
    Cloth  2
    Clouds & sky light  7
    Fire & smoke  4
    Liquids  12
  Surfaces & Meshes  7
    Implicit surfaces  6
    Parametric curves & surfaces  7
    Polygon reduction & LOD  3
    Subdivision surfaces  7
  Terrain  7
    Continuous LOD  12
    Generating data  4
    Voxel engines  2
  Text  6
  Transparency  1
  Visibility determination  16
Languages  5
  Assembler  20
  C & C++  25
    C++ exceptions  5
    Calling conventions  11
    Debugging  5
    Memory management  7
    Optimizations  6
  C#  4
  Creating your own language  13
    Garbage collection  7
  D  2
  Java  4
  Scripting  3
    JScript & VBScript  1
    Lua  6
    Other languages  8
    Perl  2
    Python  5
    Ruby  4
Mathematics  3
  Fourier transform  4
  Geometry  6
  Linear algebra, vectors & matrices  9
  Wavelet transform  5
Object design  3
Physics  5
  Body dynamics  8
  Collision detection  10
    Polytopes  6
Platform  2
  Linux  1
  Mac  2
  Windows  13
    COM, ATL & WTL  8
    Dynamically loaded libraries  6
    Hooks  5
    Input  2
    Networking  6
    Screensavers  3
    Services  1
    Shell  2
    Small executables  3
    Windows  8
Web Technologies  8

Game Development in C++
Paul Pedriana

High Performance Game Programming in C++
Paul Pedriana

Binary-compatible C++ Interfaces
Feb 2002 - Chad Austin
This article explains how to keep the binary interface intact while changing compiler configurations and even compiler. Pretty good explanation of how to use classes in DLLs too.

Portable Inheritance and Polymorphism in C
1997 - Miro Samek
This article explains how object oriented mechanisms such as classes, inheritance, virtual functions, and interfaces can be implemented in ordinary C code.

Standard Template Library Programmer's Guide
This is a collection of documents provided by SGI about their implementation of the STL library.

The One: A singleton discussion
May 2002 - Robin Tan
This article discusses the dangers of using singletons. Some of the dangers mentioned is the order of destruction, thread safety, exception safety.

Callback Implementations in C++
June 1997 - Paul Jakubik
This article describes several different design patters for callback. It includes simple global callback functions, class member callback functions, function objects. The article uses templates extensively.

Thinking in C++ 2nd Ed
2000 - Bruce Eckel
This is the complete book available online.

Using a CallHandler and Caller Object to Simplify Function Calling Between Anonymous Objects
March 2003 - John Hattan
Function pointers to member functions in C++ normally is a complicated matter, but this article shows a simple solution.

Monoliths "Unstrung"
Feb, 2002 - Herb Sutter
This article discusses class design, and how to decide which functions should be member functions and which should not.

Generic Callbacks
Feb, 2002 - Herb Sutter
This article shows how to make a well designed generic callback implementation.

C++ Home


Guru of the Week
This list holds a lot of tips on various C++ issues.

The Code Project

Scripting in C using Co-Routines
August 2003 - Thomas Tong
This article describes how to make normal C work as a scripting language that can be suspended and continued at will (without the use of threads).

Under the hood of C++
March 1994 - Jan Gray
This article describes in detail how Visual C++ implements member access for classes.

Member Function Pointers and the Fastest Possible C++ Delegates
May 2004 - Don Clugston
A very good article that explains the different types of member function pointers and how to overcome them when writing delegates.

Boost C++ Libraries
This is the official page for the boost C++ libraries.

Tiny Template Library: Implementing typelist
C++ templates that looks interesting.

C++ Templates Tutorial
1997 - Microsoft
Gives a good overview of the possibilities of templates in C++.

POCO C++ Libraries
Free C++ library for performing common tasks.

How to do case-insensitive string comparison
Matt Austern
Shows how to properly implement case-insensitive string comparison in C++

Mar, 2003 - Sandeep S
This article gives a good explanation of how GCC inline assembly should be used.

C++11 - Wikipedia
This article in the Wikipedia gives a good overview of the C++11 standard.