|
|
|
Game Programming Gems
Edited by Mark DeLoura, published 2000.
|
Optimizing Vertex Submission for OpenGL |  |
Abstract: There are a number of functions available for submitting and rendering vertices in OpenGL, which range from the simple immediate mode functions to more complicated multiple vertex functions and vendor-specific extensions. However, teh performance can vary greatly depending on the functionality used. This article provides insight into the tradeoffs of various techniques.
Tweaking a Vertex's Projected Depth Value
Abstract: The goal is to find a way to offset a polygon's depth in a scene without changing its projected screen coordinates or altering its texture mapping perspective. Most 3D graphcs libraries contain some kind of polygon offset function to help achieve this goal. However, these solutions generally lack fine control and usually incur a per-vertex performance cost. This article presents an alternative method that modifies the projection matrix to achieve the depth offset effect.
The Vector Camera |  |
Abstract: The vector camera is a generalized form of the matrix-based camera found in many traditional graphics engines. Matrices are often difficult to read due to the fact that they typically hold several operations concatenated together. The vector camera uses only simple vectors to describe its orientation to the overall graphics pipeline. This article describes the how to construct a vector camera and how to manipulate it.
Camera Control Techniques |  |
Abstract: This article outlines a few basic techniques that can be used to develop the proper camera model for your game. In addition to basics, a scripted camera traveling on various curves (B-Spline, Catmull-Rom spline) is also discussed along with issues such as zooming, dampening, and the use of quaternions.
A Fast Cylinder-Frustrum Intersection Test |  |
Abstract: This article presents a quick algorithm for determining whether an arbitrary cylinder potentially intersects the view frustum (and thus whether the object is visible).
3D Collision Detection |  |
Abstract: This article will help lay the groundwork for building an accurate physics simulation by starting with one of the most crucial parts of a real-time physics engine: 3D collision detection. The two basic algorithms this article covers are: Bounding Sphere Collision Detection and Triangle-to-Triangle Collision Detection.
Multi-Resolution Maps for Interaction Detection (Collision Detection) |  |
Abstract: This article describes a method for reducing the number of proximity tests that must be performed for games with large numbers of game objects of varying sizes.
Computing the Distance into a Sector |  |
Abstract: This article describes a simple and fast algorithm for determining where a point is between the edges of a 2D quad (or sector). The result is a unit floating point number, where 0 indicates that the point lies on the leading edge, and where 1 indicates that the point lies on the opposite edge. The sector may be any four-sided, 2D convex shape.
Object Occlusion Culling |  |
Abstract: This article introduces both frustum culling and occlusion culling, along with example code for a simple occlusion culling algorithm.
Never Let 'Em See You Pop - Issues in Geometric Level of Detail Selection
Abstract:
Octree Construction |  |
Abstract:
Loose Octrees |  |
Abstract:
View-Independent Progressive Meshing |  |
Abstract:
Interpolated 3D Keyframe Animation |  |
Abstract:
A Fast and Simple Skinning Technique |  |
Abstract:
Filling in the Gaps-Advanced Animation Using Stitching and Skinning |  |
Abstract:
Real-Time Realistic Terrain Generation |  |
Abstract:
Fractal Terrain Generation - Fault Formation |  |
Abstract:
Fractal Terrain Generation - Midpoint Displacement |  |
Abstract:
Fractal Terrain Generation - Particle Deposition |  |
Abstract:
2D Lens Flare |  |
Abstract: This article shows how to implement an attractive lens flare effect using only a small amount of code and artwork, without needing to know anything about physical optics.
Using 3D Hardware for 2D Sprite Effects |  |
Abstract: This article sheds some light on how to use 3D hardware to achieve 2D effects. Specifically, we take a look at how to do alpha blending, sprite scaling, and sprite rotation.
Motif-Based Static Lighting |  |
Abstract:
Simulated Real-Time Lighting Using Vertex Color Interpolation |  |
Abstract:
Attenuation Maps
Abstract:
Advanced Texturing Using Texture Coordinate Generation
Abstract:
Hardware Bump Mapping
Abstract:
Ground-Plane Shadows |  |
Abstract:
Real-Time Shadows on Complex Objects |  |
Abstract:
Improving Environment-Mapped Reflection Using Glossy Prefiltering and the Fresnel Term
Abstract:
Convincing-Looking Glass for Games |  |
Abstract:
Refraction Mapping for Liquids in Containers |  |
Abstract:
 |
|
|
 
|