AI GFX Topic Genre All
 
2D / Billboards
Particle Systems
Lighting
Shadows
Texturing / Shading
Pixel Shading
Vertex Shading
Terrain
Camera
Animation / Skinning
Facial Animation
Visibility / Occlusion
Surfaces
Polygonal Math
Collision Detection
Level-of-Detail / Progressive Mesh
Screenshots
Direct3D
OpenGL
Game Programming Gems
Game Programming Gems 2
Game Programming Gems 3
Game Programming Gems 4
Graphics Programming Methods
GDC Proceedings
Game Developer Magazine
Gamasutra


Home    By Topic    By Effect    All Articles    Contact

Game Programming Gems 4
Edited by Andrew Kirmse, published 2004.

Poster Quality Screenshots
Steve Rabin (Nintendo of America)
Game Programming Gems 4, 2004.
Abstract: In the promotion of any game, there will come a time when you need screenshots for advertisements, box covers, previews, strategy guides, magazine covers, and full-size posters. Unfortunately, raw screenshots are often inferior for many of these purposes. This article details a method by which screenshots can be improved in two main ways: by increasing the resolution and by increasing the pixel quality (anti-aliasing). This technique has been successfully used to generate shots as large as 19,200 x 14,400 at 100 samples per pixel on Nintendo GameCube hardware. However the technique is extremely general and applicable to any platform.

GPU Shadow Volume Construction for Nonclosed Meshes

Warrick Buchanan
Game Programming Gems 4, 2004.
Abstract: This article presents a method of rendering shadow volumes without requiring a two-manifold, closed mesh.

Perspective Shadow Maps

Marc Stamminger, George Drettakis, Carsten Dachsbacher
Game Programming Gems 4, 2004.
Abstract: Perspective shadow maps are very similar to standard shadow maps, but are distorted such that regions close to the camera have higher resolution than distant regions. This article describes the details of perspective shadow maps, demonstrates how they are generated, and discusses how typical pitfalls can be avoided.

Combined Depth and ID-Based Shadow Buffers

Kurt Pelzer (Piranha Bytes)
Game Programming Gems 4, 2004.
Abstract: This article describes a hybrid approach that combines the techniques of both depth and ID-based shadow buffers, exploiting the advantages of both methods. This approach allows for self-shadowing and supports up to 42,875 unique IDs.

Carving Static Shadows into Geometry
Alex Vlachos (ATI Research, Inc.)
Game Programming Gems 4, 2004.
Abstract: This article describes a method of carving hard shadows directly into static geometry to create crisp, hard scene shadows that are consistent with the look of the stencil shadows typically used for characters. After the carving process, each resulting polygon is marked as either "in light" or "in shadow" for later rendering. This saves the overhead of rendering full shadow volumes for every detail in a scene, resulting in significant fill-rate savings. Additionally, we will briefly discuss how to dynamically cast shadows on moving objects using low-resolution proxy shadow volumes.

Adjusting Real-Time Lighting for Shadow Volumes and Optimized Meshes
Alex Vlachos and Chris Oat (ATI Research, Inc.)
Game Programming Gems 4, 2004.
Abstract: Lighting an entire mesh is well understood and presents no real, unexpected artifacts. However, when more complex rendering systems optimize the number of polygons being rendered, like backface-culling from the light's point of view, lighting artifacts are introduced. When culling is done based on face normals and lighting is done based on vertex normals, some adjustments are required. The same applies to self-shadowing meshes that use stencil shadow volumes, since the shadow volumes are extruded based on face normals. Additionally, bump mapping needs even further adjustment, because the normal has nothing to do with the geometric shape of the mesh. This article explores these problems and presents a solution that is accomplished entirely in the pixel shader.

Real-Time Halftoning: Fast and Simple Stylized Shading

Bert Freudenberg, Maic Masuch, Thomas Strothotte (University of Magdeburg)
Game Programming Gems 4, 2004.
Abstract: This article introduces halftoning as a way of implementing nonphotorealistic rendering styles for computer games. The technique uses only the conventional multitexturing pipeline on common hardware. We show how to create halftone screens for images that resemble pen-and-ink drawing styles, and how to implement fast halftone rendering with modest pixel shading hardware.

Techniques to Apply Team Colors to 3D Models

Greg Seegert (Stainless Steel Studios)
Game Programming Gems 4, 2004.
Abstract: Applying visually appealing team color to 3D models is an important technique in any game with multiple players, whether AI or human controlled. This article explores several techniques for applying team color to arbitrary 3D models. The implementation of each technique is carefully explained, and the benefits and drawbacks of each method are discussed. The techniques include Unique Textures, Polygon Tinting, Texture Masks via Multitexturing, Texture Masks via Multipass, and Advanced Texture Masks via Pixel Shaders.

Fast Sepia Tone Conversion
Marwan Ansari (ATI Research, Inc.)
Game Programming Gems 4, 2004.
Abstract: Sepia tone is a color space that is used to give images an aged or antique feel. Color conversion from RGB to sepia has usually been performed by mapping an RGB color into a lookup table. Although this technique is simple and effective, we have found a simpler and faster way to perform the same conversion with just a few pixel shader instructions and no table lookup.

Dynamic Gamma Using Sampled Scene Luminance

Michael Dougherty and Dave McCoy
Game Programming Gems 4, 2004.
Abstract: The human eye constantly samples the brightness of available light and dialates the pupil in response. This variable sensitivity allows it to operate under a much wider range of lighting conditions from dark to bright. By sampling the frame buffer and adjusting the output gamma based on analysis of the data, the technique outlined in this article is able to simulate this type of variable sensitivity and make much better use of video's limited dynamic range. The same technique also allows the simulation of a number of visual phenomena that occur as the eye responds to changing, high dynamic range lighting.

Heat and Haze Post-Processing Effects
Chris Oat and Natalya Tatarchuk (ATI Research, Inc.)
Game Programming Gems 4, 2004.
Abstract: This article focuses on reproducing the visual phenomenon of gaseous convection by approximating an image such that it looks visually convincing. This post-processing effect can be easily included at the end of just about any rendering pipeline, and can significantly enhance the final output by creating stunning visual effects with relatively little effort on the part of the programmer.

Hardware Skinning with Quaternions
Jim Hejl (Electionic Arts Tiburon)
Game Programming Gems 4, 2004.
Abstract: This article describes a technique for spherical joint blending with quaternions. This fast, accurate, and compact skinning solution keeps joints from collapsing, which is a common artifact with skinning techniques such as vertex blending.

Motion Capture Data Compression
Søren Hannibal (Shiny Entertainment)
Game Programming Gems 4, 2004.
Abstract: This article demonstrates a lossy compression system that was developed to improve memory usage for motion capture data. While the system has some features that take advantage of bone hierarchies, a more general solution can be used on any keyframed animation, such as prerecorded camera movements and hand-animated physics objects.

Fast Collision Detection for 3D Bones-Based Articulated Characters
Oliver Heim, Carl S. Marshall, Adam Lake (Intel Corporation)
Game Programming Gems 4, 2004.
Abstract: This article aims to give a practical, efficient implementation for collision detection with a bones-based character. Our implementation offers several advantages over techniques common in today's engines and leverages current infrastructure that is already needed for character animation.

Terrain Occlusion Culling with Horizons

Glenn Fiedler (Irrational Games)
Game Programming Gems 4, 2004.
Abstract: This article describes an occlusion culling technique for outdoor scenes based on heightfield terrain geometry. Unlike other terrain occlusion culling techniques, it does not require expensive offline preprocessing, so it is able to adapt on the fly to dynamically changing terrain.

 
Survey of best prices
Survey of best prices
AI Game Programming Wisdom

AI Game Programming Wisdom 2

Game
Programming
Gems


Game
Programming
Gems 2


Game
Programming
Gems 3


Game
Programming
Gems 4



Home