Direct3D Articles

Home | Up | Search | X-Zone News | Services | Book Support | Links | Feedback | Smalltalk MT | The Scrapyard | FAQ


Direct3D Articles

Linearized Depth using Vertex Shaders04/27/2006In this article we'll look at an easy way to implement linear depth values using a Z-buffer, by implementing transformation in a programmable vertex shader.
Texture Based Clipping Demo04/27/2006Shows an alternate technique for clipping of geometry to arbitrary planes. This provides a high performance alternative to Direct3D user-defined clipping planes, and allows arbitrary clipping planes while using hardware T&L on devices that do not support clip planes.
Understanding the Dot Product07/30/2005Provides an introduction to the dot product function, which determines the relationship of two vectors, and explores various uses of this function
Using W-Buffers07/01/2005Provides a look at the the mathematical and practical differences between Z and W based depth buffering. Includes code to detect W-Buffering hardware and implement W based depth buffers.
Introduction to Effect Files08/01/2004The first in a series of articles targetted at DirectX Effect Files, provides an introduction to the use of Effect Files with the D3DX framework. Effects allow the developer to define rendering techniques outside of application code. Benefits include greater flexibility for your rendering engine, support of various hardware capabilities, and a rapid integration of new objects and visual effects into an application without the need for changes to compiled code.
Rendering Full Screen Images from Textures07/10/2004Shows how to use textures to render full screen bitmaps, such as splash screens or backgrounds, using D3D primitives. Sample code includes detection of maximum texture size, and subdivision of images too large for hardware to load in a single texture.
Saving a Screen Shot in DirectX Graphics07/10/2004Simple function to perform screen grabs in DX 8.1, with source code.
A Simple Blit Function for DirectX 807/10/2004Shows how to use pre-transformed polygons to simulate a Blit function in Direct3D.
Scaling and Centering of ID3DXMesh Geometry04/11/2003Source code for functions that allow a mesh to be rescaled to fit within specific bounds and/or centered at origin
Scaling and Centering of ID3DXMesh Geometry in DX904/11/2003Source code for functions that allow a mesh to be rescaled to fit within specific bounds and/or centered at origin
DirectX 8 Graphics FAQ01/28/2003X-Zone's FAQ on issues specific to DirectX 9 Graphics
Batching of Polygons with a Vertex Cache09/27/2002Illustrates the use of a vertex cache to improve performance by batching together smaller groups of triangles.
Shader Transforms with Non-Transposed Matrices06/19/2002Shows how to use row-major matrices for transformation in a programmable vertex shader, avoiding having to transpose matrices used as inputs to a vertex shader.
Synthesizing Patches using Vertex Shaders05/21/2002Vertex Shader Terrain Demo and Article
Introduction to Catmull-Rom Splines05/21/2002Explains Catmull-Rom splines and their potential uses. Includes demo source and executable illustrating the use of Catmull-Rom splines for smooth animation along a path.
View Oriented Billboards05/21/2002Billboarding techniques are utilized in 3D applications to orient a polygon to always face the user. This allows the application of a 2D image, such as a lens flare or images of foliage, into a 3D scene. By applying an image in this way, the illusion of complex objects or effects can be applied with a minimum of overhead.
Creating Subsets in ID3DXMesh04/16/2002Explains how to render subsets within an ID3DXMesh object, including setup of attribute buffers and mesh optimization.
Stencil Based Screen Wipes03/13/2002Provides sample application with source code, illustrating the application of an alpha mask to the stencil buffer, and the use of this technique to create complex screen wipes between scenes.
Rendering 3D Scenes to Large Image Formats03/05/2002In this article we will take a look at a technique for rendering very large images in Direct3D, independant of available video memory. Inlcudes sample source code.
Color Keying in DirectX 8 Graphics01/20/2002Demonstrates how to simulate color keying in DirectX 8 Graphics using alpha blending and the D3DX texture creation functions.
Using the ID3DXMesh Class01/20/2002Discusses the basics you need to know to use the ID3DXMesh class, including mesh storage, using attributes to draw subsets, mesh optimization, and more.
Projecting a Ray from 2D Screen Coordinates01/20/2002Direct3D provides the means to project your 3D world onto the screen, but often 3D titles require the ability to convert screen coordinates into 3D, and to determine the objects that are visible at a location in the viewport. This article lies the initial groundwork required for establishing a ray pick routine, by providing algorithms and working code to convert a pixel coordinate into a ray in world space.
Improved Ray Picking01/20/2002Sample application with source code to demonstrate object selection. This sample improves upon the DirectX SDK's Pick sample by handling separate object transformations, and also demonstrates transformation of objects in a hierarchial tree.
FVF Definitions for DX7 Vertex Types in DX811/25/2001Provides Flexible Vertex Format (FVF) definitions for the standard DX7 vertex types. These are handy for those who are porting applications to DX8, and need definitions for their existing vertex formats.
Using Bounding Spheres11/25/2001In this article, we will take a look at how bounding spheres are defined, and how they can be used for efficient course testing of collision.
First Look at DX8 Graphics11/25/2001A look at some of the changes in the graphics APIs in DX8. This area is aimed at highlighting the changes that will have to be considered when making the move to DX 8 with your existing code.
Spherical Texture Mapping11/15/2001This article demonstrates the mapping of spherical texture coordinates onto an object. Includes sample code for texture wrapping a ID3DXMesh Object.
Simple DX8 Framework11/15/2001A good starting point for writing applications using DirectX 8 graphics. Provides full screen and windowed operation, and a high performance message loop.
Rendering to Multiple Windows11/15/2001Provides information on source code necessary to develop applications that render multiple views in separate windows using DirectX Graphics.

This site, created by DirectX MVP Robert Dunlop and aided by the work of other volunteers, provides a free on-line resource for DirectX programmers.

Special thanks to WWW.MVPS.ORG, for providing a permanent home for this site.

Visitors Since 1/1/2000: Hit Counter
Last updated: 07/26/05.