
       Reflections and Refraction in Raytracing | 
   
       Creating a Scalable Console System with STL | 
   
       Accelerated Stencil Shadow Extrusion via Vertex Blending | 
   
       Light Mapping - Theory and Implementation | 
   
       Fast Approximate Distance Functions | 
   
       Managing Unit Actions | 
   
       Frustum Culling | 
   
       An Exceptional Model | 
   
       SkinnedMesh DPlay Maze | 
   
       Modular D3D SkinnedMesh | 
   
       Pixel Shader 2.0 Example | 
   
       C++ Coding Style | 
   
       Simple Terrain Occlusion Culling | 
   
       CVS Quick Start Guide | 
   
       Adding Plug-ins To Your Application | 
   
       Five Ways I Improved My Coding Workflow | 
   
       ATI Mojo Day 2002: San Francisco | 
   
       Billboarding | 
   
       Building A Game On Your Own | 
   
       Object Outlining | 
   
       Win32 Window Skinning | 
   
       Interfacing Visual Basic And C++ | 
   
       Strayfire: Writing A "Simple" Game | 
   
       Game Institute Review | 
   
       Modeling a Simple Spaceship | 
   
       Geometry Skinning / Blending and Vertex Lighting | 
   
       NURBS Curves & Surfaces | 
   
       A Small, Portable 3D Engine | 
   
       Being A Better Programmer | 
   
       ROAM Implementation Optimizations | 
   
       Advanced 2D Graphics With DirectX8 | 
   
       A 2D Guide To DirectX 8 Graphics | 
   
       Generating Terrain Textures | 
   
       Terrain Texture Generation | 
   
       Polygon Tessellation In OpenGL | 
   
       Faster Vector Math Using Templates | 
   
       Advanced Lightmapping | 
   
       Elements Of A Game Engine | 
   
       Faster File Access With File Mapping | 
   
       Generating Names Phonetically | 
   
       Getting Inside With Inner Classes | 
   
       Fast Terrain Rendering Using Geometrical MipMapping | 
   
       Coding Bloom Filters | 
   
       Decals Explained | 
   
       C++ Exception Handling | 
   
       The Half-Edge Data Structure | 
   
       Reducing Dependencies In C++ | 
   
       Using Inheritance And Virtual Functions | 
   
       Console Variables And Commands | 
   
       Doing Your Own Lighting | 
   
       Introduction To Plücker Coordinates | 
   
       Quake 2 BSP File Format | 
   
       How To Find Memory Leaks | 
   
       BeOS Programming For The Beginner | 
   
       Advanced OpenGL Texture Mapping | 
   
       Basic Collision Detection | 
   
       Level Editing | 
   
       Sky Domes | 
   
       Back Projections | 
   
       8-bit Rendering With Translucency Maps | 
   
       Lightmaps (Static Shadowmaps) | 
   
       Improving Software Performance | 
   
       Omnidirection Point Lights | 
   
       Thoughts On Visibility Determination | 
   
       Advanced Management Of Polygonal Data | 
   
       Introduction To Octrees | 
   
       Mesh Optimization Via Face Merging | 
   
       Real-time Object Morphing | 
   
       Vertex Normals | 
   
       Adding Extreme Detail To Polygons | 
   
       Casting Shadows | 
   
       Voxel Polygons | 
   
       Mip-Mapping (Including Bi-Directional) | 
   
       Dynamic Lighting In 3D Scenes | 
   
       Real-time 3D Bumpmapping | 
   
       Real-time 3D Clipping (Sutherland-Hodgeman) | 
   
       The Coverage Buffer (C-Buffer) | 
   
       Bilinear Filtering (Interpolation) | 
   
       Method for Curved Surfaces | 
   
       Creating And Using DLLs | 
   
       Working With Menus And Dialog Boxes | 
   
       Introduction To Basic Multithreaded Programming | 
   
       Introduction To Windows Programming | 
   
| Featured Article Series & Columns: | 
    Raytracing Topics & Techniques by Jacco Bikker | 
       Raytracing Topics & Techniques - Part 7: Kd-Trees and More Speed | 
   
       Raytracing Topics & Techniques - Part 6: Textures, Cameras and Speed | 
   
       Raytracing Topics & Techniques - Part 5: Soft Shadows | 
   
       Raytracing Topics & Techniques - Part 4: Spatial Subdivisions | 
   
       Raytracing Topics & Techniques - Part 3: Refractions and Beer's Law | 
   
       Raytracing Topics & Techniques - Part 2 - Phong, Mirrors and Shadows | 
   
       Raytracing Topics & Techniques - Part 1 - Introduction | 
   
    3D Graphics on Mobile Devices by Jacco Bikker | 
       3D Graphics on Mobile Devices - Part 4: Polygon Rasterization | 
   
       3D Graphics on Mobile Devices - Part 3: Polygon Graphics | 
   
       3D Graphics on Mobile Devices - Part 2: Fixed Point Math | 
   
       3D Graphics on Mobile Devices - Part 1: Voxel Graphics | 
   
    3D Geometry Primer: Chapter 2 by Bram de Greve | 
       3D Geometry Primer: Chapter 2 - Issue 04 - Cartesian Equations and Normal Vectors | 
   
       3D Geometry Primer: Chapter 2 - Issue 03 - Planes and Parametric Equations | 
   
       3D Geometry Primer: Chapter 2 - Issue 02 - Appendix | 
   
       3D Geometry Primer: Chapter 2 - Issue 02 - More About Lines | 
   
       3D Geometry Primer: Chapter 2 - Issue 01 - Appendix | 
   
       3D Geometry Primer: Chapter 2 - Issue 01 - Points And Lines | 
   
    Plücker Coordinates for the Rest of Us by Lionel Brits | 
       Plücker Coordinates for the Rest of Us - Part 4 - Applications | 
   
       Plücker Coordinates for the Rest of Us - Part 3 | 
   
       Plücker Coordinates for the Rest of Us - Part 2 | 
   
       Plücker Coordinates for the Rest of Us - Part 1 | 
   
    Programming a Virtual File System by Michael Walter | 
       Programming a Virtual File System - Part III | 
   
       Programming a Virtual File System - Part II | 
   
       Programming a Virtual File System - Part I | 
   
    Too Fast To Be Fun by Jacco Bikker | 
       Too Fast To Be Fun - Part 2 - PDA Programming | 
   
       Too Fast To Be Fun - Part 1 | 
   
    Advanced String Techniques in C++ by Fredrik Andersson | 
       Advanced String Techniques in C++ - Part II: A Complete String Class | 
   
       Advanced String Techniques in C++ - Part I: Unicode | 
   
    3D Geometry Primer: Chapter 1 by Bram de Greve | 
       3D Geometry Primer: Chapter 1 - Issue 10 - Addendum: What I Didn't Tell You (Yet) | 
   
       3D Geometry Primer: Chapter 1 - Issue 09 - Barycentric Combinations | 
   
       3D Geometry Primer: Chapter 1 - Issue 08 - Point Arithmetic | 
   
       3D Geometry Primer: Chapter 1 - Issue 07 - From Vectors To Points | 
   
       3D Geometry Primer: Chapter 1 - Issue 06 - New Light On Vector Arithmetic | 
   
       3D Geometry Primer: Chapter 1 - Issue 05 - 3D Space: Righthanded Rules, And More... | 
   
       3D Geometry Primer: Chapter 1 - Issue 04 - Vector Bases | 
   
       3D Geometry Primer: Chapter 1 - Issue 03 - More On Vector Arithmetic | 
   
       3D Geometry Primer: Chapter 1 - Issue 02 - Vector Arithmetic | 
   
       3D Geometry Primer: Chapter 1 - Issue 01 - Introduction To Vectors | 
   
       3D Geometry Primer: Chapter 1 - Appendix | 
   
       3D Geometry Primer: Chapter 1 - Introduction | 
   
    DirectShow For Media Playback In Windows by Chris Thompson | 
       DirectShow For Media Playback In Windows - Part III: Customizing Graphs | 
   
       DirectShow For Media Playback In Windows - Part II: DirectShow In C++ | 
   
       DirectShow For Media Playback In Windows - Part I: Basics | 
   
    Theory & Practice by Greg Magarshak | 
       Theory & Practice - Issue 06 - Event Handling Model | 
   
       Theory & Practice - Issue 05 - Landscapes | 
   
       Theory & Practice - Issue 04 - Curved Surfaces, Part II | 
   
       Theory & Practice - Issue 03 - Curved Surfaces | 
   
       Theory & Practice - Issue 02 - Collision Detection - Part 2 | 
   
       Theory & Practice - Issue 01 - Collision Detection | 
   
       Theory & Practice - Issue 00 - Introduction | 
   
    Dirtypunk's Column by Conor Stokes | 
       Dirtypunk's Column - Issue 05 - AABB Trees - Back To Playing With Blocks | 
   
       Dirtypunk's Column - Issue 04 - View Independent Progressive Meshes | 
   
       Dirtypunk's Column - Issue 03 - Visibility Theory | 
   
       Dirtypunk's Column - Issue 02 - Line Dualities: Plucker Space And You | 
   
       Dirtypunk's Column - Issue 01 - Hardware Rendering Optimizations | 
   
    Multithreading by Dan Royer | 
       Multithreading - Part 2 | 
   
       Multithreading - Part 1 | 
   
    Realtime Voxel Landscape Engines by Alex Champandard | 
       Realtime Voxel Landscape Engines - Part 8 - Final Words | 
   
       Realtime Voxel Landscape Engines - Part 7 - The Engine | 
   
       Realtime Voxel Landscape Engines - Part 6 - Hardware Acceleration | 
   
       Realtime Voxel Landscape Engines - Part 5 - Quality Improvement | 
   
       Realtime Voxel Landscape Engines - Part 4 - Level of Detail and Optimisation | 
   
       Realtime Voxel Landscape Engines - Part 3 - Texture and Lighting | 
   
       Realtime Voxel Landscape Engines - Part 2 - Rendering the Landscape's Structure | 
   
       Realtime Voxel Landscape Engines - Part 1 - Introduction | 
   
    Cool, It Works! by Warren Marshall | 
       Cool, It Works! - Issue 05 - 32-Bit GL Textures & Log Files | 
   
       Cool, It Works! - Issue 04 - Handling Textures & Effects | 
   
       Cool, It Works! - Issue 03 - Files, Texture Effects, Coronas, & More | 
   
       Cool, It Works! - Issue 02 - Linked Lists, Overloading Operators, Sprites, & More | 
   
       Cool, It Works! - Issue 01 - Introduction | 
   
    The Art of Demomaking by Alex Champandard | 
       The Art of Demomaking - Issue 16 - The Final Product  | 
   
       The Art of Demomaking - Issue 15 - Music And Synchronization | 
   
       The Art of Demomaking - Issue 14 - Perspective Correct Texture Mapping | 
   
       The Art of Demomaking - Issue 13 - Polygon Engines | 
   
       The Art of Demomaking - Issue 12 - Span Based Rendering | 
   
       The Art of Demomaking - Issue 11 - Particle Systems | 
   
       The Art of Demomaking - Issue 10 - Roto-Zooming | 
   
       The Art of Demomaking - Issue 09 - Static Texture Mapping | 
   
       The Art of Demomaking - Issue 08 - Fractal Zooming | 
   
       The Art of Demomaking - Issue 07 - Bump Mapping | 
   
       The Art of Demomaking - Issue 06 - Bitmap Distortion | 
   
       The Art of Demomaking - Issue 05 - Filters | 
   
       The Art of Demomaking - Issue 04 - Per Pixel Control | 
   
       The Art of Demomaking - Issue 03 - Timer Related Issues | 
   
       The Art of Demomaking - Issue 02 - Introduction To Computer Graphics | 
   
       The Art of Demomaking - Issue 01 - Prologue | 
   
    Network Game Programming by Dan Royer | 
       Network Game Programming - Issue 07 - I bent my Wookie... | 
   
       Network Game Programming - Issue 06 - Talk about things you like to do... | 
   
       Network Game Programming - Issue 05 - Watch your Language | 
   
       Network Game Programming - Issue 04 - cServer? I barely know her! | 
   
       Network Game Programming - Issue 03 - cClient. cClient run | 
   
       Network Game Programming - Issue 02 - cComm one, cComm all | 
   
       Network Game Programming - Issue 01 - Things that make you go "hmm..." | 
   
    Radiosity In English by Paul Nettle | 
       Radiosity In English - Form Factor Calculation | 
   
       Radiosity In English - The Basics | 
   
    Implementing A Scripting Engine by Jan Niestadt | 
       Implementing A Scripting Engine - Part 9 - Advanced Subjects | 
   
       Implementing A Scripting Engine - Part 8 - Executable Code | 
   
       Implementing A Scripting Engine - Part 7 - The Virtual Machine | 
   
       Implementing A Scripting Engine - Part 6 - Optimization | 
   
       Implementing A Scripting Engine - Part 5 - The Semantic Checker & Intermediate Code Generator | 
   
       Implementing A Scripting Engine - Part 4 - The Symbol Table & Syntax Tree | 
   
       Implementing A Scripting Engine - Part 3 - The Parser | 
   
       Implementing A Scripting Engine - Part 2 - The Lexical Analyzer | 
   
       Implementing A Scripting Engine - Part 1 - Overview | 
   
    Harmless Algorithms by Edward Kmett | 
       Harmless Algorithms - Issue 04 - A Hybrid Approach to Visibility | 
   
       Harmless Algorithms - Issue 03 - Design Patterns And 3D Gaming | 
   
       Harmless Algorithms - Issue 02 - Scene Traversal Algorithms | 
   
       Harmless Algorithms - Issue 01 - Fine Occlusion Culling Algorithms | 
   
    Building a 3D Portal Engine by Jacco Bikker | 
       Building a 3D Portal Engine - Issue 17 - End Of Transmission  | 
   
       Building a 3D Portal Engine - Issue 16 - More On Portals | 
   
       Building a 3D Portal Engine - Issue 15 - Space Partitioning, Octrees, And BSPs | 
   
       Building a 3D Portal Engine - Issue 14 - 3D Engine Architecture | 
   
       Building a 3D Portal Engine - Issue 13 - More Portal Features | 
   
       Building a 3D Portal Engine - Issue 12 - Collision Detection (Guest Writer) | 
   
       Building a 3D Portal Engine - Issue 11 - 3D Portal Rendering | 
   
       Building a 3D Portal Engine - Issue 10 - Intermezzo - 8/15/16/32 Bit Color Mixing | 
   
       Building a 3D Portal Engine - Issue 09 - 2D Portal Rendering | 
   
       Building a 3D Portal Engine - Issue 08 - Polygon Filling | 
   
       Building a 3D Portal Engine - Issue 07 - 2D & 3D Clipping: Sutherland-Hodgeman | 
   
       Building a 3D Portal Engine - Issue 06 - Hidden Surface Removal | 
   
       Building a 3D Portal Engine - Issue 05 - Coding A Wireframe Cube | 
   
       Building a 3D Portal Engine - Issue 04 - Data Structures For 3D Graphics | 
   
       Building a 3D Portal Engine - Issue 03 - 3D Matrix Math | 
   
       Building a 3D Portal Engine - Issue 02 - Graphics Output Under Windows | 
   
       Building a 3D Portal Engine - Issue 01 - Introduction |