Direct3D graphics glossary

Defines Microsoft Direct3D graphics terms. This glossary defines, at a high level, general 3D computer graphics terms that are used in Direct3D game and app development.

In this section

Topic Description

Coordinate systems and geometry

Programming Direct3D applications requires a working familiarity with 3D geometric principles. This section introduces the most important geometric concepts for creating 3D scenes.

Vertex and index buffers

Vertex buffers are memory buffers that contain vertex data; vertices in a vertex buffer are processed to perform transformation, lighting, and clipping. Index buffers are memory buffers that contain index data, which are integer offsets into vertex buffers, used to render primitives.


A Direct3D device is the rendering component of Direct3D. A device encapsulates and stores the rendering state, performs transformations and lighting operations, and rasterizes an image to a surface.


Lights are used to illuminate objects in a scene. The color of each object vertex is based on the current texture map, vertex colors, and light sources.

Depth and stencil buffers

A depth buffer stores depth information to control which areas of polygons are rendered rather than hidden from view. A stencil buffer is used to mask pixels in an image, to produce special effects, including compositing; decaling; dissolves, fades, and swipes; outlines and silhouettes; and two-sided stencil.


Textures are a powerful tool in creating realism in computer-generated 3D images. Direct3D supports an extensive texturing feature set, providing developers with easy access to advanced texturing techniques.

Graphics pipeline

The Direct3D graphics pipeline is designed for generating graphics for realtime gaming applications. Data flows from input to output through each of the configurable or programmable stages.


The term "view" is used to mean "data in the required format". For example, a Constant Buffer View (CBV) would be constant buffer data correctly formatted. This section describes the most common and useful views.

Compute pipeline

The Direct3D compute pipeline is designed to handle calculations that can be done mostly in parallel with the graphics pipeline.


A resource is an area in memory that can be accessed by the Direct3D pipeline. In order for the pipeline to access memory efficiently, data that is provided to the pipeline (such as input geometry, shader resources, and textures) must be stored in a resource. There are two types of resources from which all Direct3D resources derive: a buffer or a texture. Up to 128 resources can be active for each pipeline stage.

Streaming resources

Streaming resources are large logical resources that use small amounts of physical memory. Instead of passing an entire large resource, small parts of the resource are streamed as needed. Streaming resources were previously called tiled resources.


These sections provide in-depth technical details.