Microsoft Direct3D is a low-level graphics application programming interface (API) that enables you to manipulate visual models of 3-D objects and take advantage of hardware acceleration. The following tables list the members exposed by the Microsoft.DirectX.Direct3D namespace.

See also the Microsoft.DirectX namespace, which provides utility and data storage operations.


AdapterInformation Manipulates adapter information.
AdapterListCollection Manipulates a collection of adapters.
AllocateHierarchy Derived by the application to allocate/free frame and mesh container objects. Methods of this class are called during loading and destruction of frame hierarchies.
AnimationController Controls animation functionality, connecting animation sets to the transformation frames being animated.
AnimationOutput Encapsulates matrix, scale, rotate, and translate (SRT) transformation objects.
AnimationSet Encapsulates the minimum functionality required of an animation set by an animation controller.

Advanced users might want to implement this class themselves to suit their specialized needs. For most users, however, the derived CompressedAnimationSet and KeyframedAnimationSet classes should suffice.
BaseEffect Provides methods for retrieving and setting effect parameters such as constants, functions, shaders, and techniques.
BaseMesh Manipulates and queries mesh objects and derived mesh objects.
BaseTexture Manipulates texture resources, including cube and volume textures.
CannotAttributeSortException Attribute sort is not supported as an optimization technique. For more information, see MeshFlags.OptimizeAttrSort.
CannotModifyIndexBufferException The index buffer cannot be modified.
ClipPlane Defines the clipping plane for a device.
ClipPlanes Contains the clipping planes on the device.
ColorOperator Contains methods for manipulating colors.
CompressedAnimationSet Implements a keyframe animation set that is stored in a compressed data format.
ConflictingRenderStateException The currently set render states cannot be used together.
ConflictingTextureFilterException The current texture filters cannot be used together.
ConflictingTexturePaletteException The current textures cannot be used simultaneously.
ConstantTable Provides access to the constant table, which contains the variables that are used by high-level language shaders and effects.
CubeTexture Manipulates a cube texture resource.
CustomVertex Defines various custom fixed-format vertex types. This class is a container of structures. See the individual structures for more information.
D3DX Contains default constant values for Direct3D extensions.
Device Performs primitive-based rendering, creates resources, handles system-level variables, adjusts gamma ramp levels, gets and sets palettes, and creates shaders.
DeviceInformation Contains functionality for retrieving the driver level for a device.
DeviceLostException The device has been lost but cannot be reset at this time. Therefore, rendering is not possible.
DeviceNotResetException The device has been lost but can be reset at this time.
Direct3DXException Base exception class for D3DX. Derives from DirectXException.
DisplayModeCollection Manipulates a collection of DisplayMode structures.
DriverInternalErrorException Internal driver error. Applications should generally shut down when receiving this error.
DriverInvalidCallException The driver reports that the current method call is invalid.
DuplicateNamedFragmentException There is a duplicate named fragment.
Effect Used to set and query effects and choose techniques.
EffectCompiler Compiles an effect from a function or vertex shader.
EffectHandle Represents a handle to specific effects.
EffectPool Allows applications to share resources between effects.
EffectStateManager EffectStateManager is a user-implemented class that allows an application to set the device state from an effect. Each of the methods in this class must be implemented by the user and will then be used as a callback to the application when either of the following occur:
  • Effect.BeginPass is called.
  • Effect state is dynamically updated by calling the appropriate state change API. See individual method pages for details.
Font Encapsulates the textures and resources needed to render a specific font on a specific device.
FragmentLinker Links shader fragments at runtime.
Frame Encapsulates a transform frame in a transformation frame hierarchy.
Geometry Contains miscellaneous math-related functions.
GraphicsException Base exception type for graphics. Derives from DirectXException.
Include Provides access to include-file directives.
IndexBuffer Manipulates an index buffer resource.
IntegratedMetricTensor Contains methods to calculate integrated metric tensor (IMT) values for use in UVAtlas operations.
InterfaceGuid Encapsulates various object globally unique identifiers (GUIDs) for use with the Surface.GetContainer and Volume.GetContainer methods.
InvalidCallException The method call is invalid. For example, a method's parameter might not be valid.
InvalidDataException The data is invalid.
InvalidDeviceException The requested device type is not valid.
InvalidMeshException The mesh is invalid.
KeyframedAnimationSet Implements a keyframe animation set.
Light Defines a set of lighting properties.
LightsCollection Defines a collection of lights.
Line Implements line drawing using textured triangles.
LoadedMeshHasNoDataException The mesh has no data.
LoadUserData Derived by the application to allocate or free frame and mesh container objects. Methods of this class are called during loading and destruction of frame hierarchies.
Manager Provides information about the environment, and enumerates and retrieves device capabilities.
Mesh Manipulates mesh objects.
MeshContainer Encapsulates a mesh object in a transformation frame hierarchy.
MoreDataException More data is available than the specified buffer size can hold.
NotAvailableException This device does not support the queried technique.
NotFoundException The requested item was not found.
OutOfVideoMemoryException Direct3D does not have enough display memory to perform the operation.
PatchMesh Provides patch mesh functionality.
PixelShader Encapsulates the functionality of a pixel shader.
PresentParameters Describes the presentation parameters.
ProgressiveMesh Manipulates progressive mesh objects.
PrtBuffer Used as a data buffer to store vertex and pixel data for use with precomputed radiance transfer (PRT) methods and functions.
PrtCompressedBuffer Stores a compressed version of a PrtBuffer object for use with principal component analysis (PCA).
PrtEngine The PrtEngine class is used to compute a PRT simulation. Its methods are typically used offline to compute per-vertex or per-texel transfer vectors in advance of real-time 3-D modeling.
Query Performs asynchronous queries on a driver.
RenderStateManager Defines device render states.
RenderToEnvironmentMap Generalizes the process of rendering to environment maps. An environment map is used to texture-map scene geometry to provide a more sophisticated scene without using complex geometry. This class supports the creation of surfaces for the following kinds of geometry: cube, half sphere or hemispheric, parabolic, and sphere.
RenderToSurface Generalizes the process of rendering to surfaces. Surfaces can be used in a variety of ways; for example, as render targets, or for off-screen rendering and rendering to textures.
Resource Queries and prepares resources.
SamplerStateManager Contains sampler states for the device.
SamplerStateManagerCollection Collection of SamplerStateManager objects.
SaveUserData Implemented by the application to save frame and mesh container objects.
ShaderLoader Encapsulates the functionality for loading shader objects.
SimplificationMesh Manipulates simplification mesh objects.
SkinInformation Manipulates bone matrices, which are used to skin vertex data for animation.
SkinningNotSupportedException Skinning is not supported.
SphericalHarmonics Encapsulates spherical harmonic (SH) mathematical functions.
Sprite Provides methods and properties that simplify the process of drawing sprites using Direct3D.
StateBlock Encapsulates render states.
Surface Queries and prepares surfaces.
SurfaceLoader Loads and saves surfaces.
SwapChain Manipulates a swap chain.
Texture Manipulates a texture resource.
TextureGutterHelper Used to build and manage gutter regions in a texture. Gutter regions separate textures and allow for bilinear interpolation to avoid rendering artifacts at texture boundaries.
TextureLoader Contains functions to load and save textures.
TextureShader Encapsulates the functionality of a texture shader.
TextureStateManager Contains texture states for the device.
TextureStateManagerCollection Collection of TextureStateManager objects.
TooManyInfluencesException Too many influences specified.
TooManyOperationsException The application is requesting more texture-filtering operations than the device supports.
Transforms Allows applications to specify and obtain matrix transformations; for example, the world, view, and transformation matrices used for Direct3D object rendering.
UnsupportedAlphaArgumentException The device does not support a specified texture-blending argument for the alpha channel.
UnsupportedAlphaOperationException The device does not support a specified texture-blending operation for the alpha channel.
UnsupportedColorArgumentException The device does not support a specified texture-blending argument for color values.
UnsupportedColorOperationException The device does not support a specified texture-blending operation for color values.
UnsupportedFactorValueException The device does not support the specified texture factor value. Not used; provided only to support older drivers.
UnsupportedTextureFilterException The device does not support the specified texture filter.
UVAtlas Contains methods for creating UV texture atlases.
VertexBuffer Manipulates vertex buffer resources.
VertexDeclaration Encapsulates the vertex shader declaration.
VertexInformation Retrieves vertex information.
VertexShader Encapsulates the functionality of a vertex shader.
VertexTextureCoordinate Constructs bit patterns that are used to identify texture coordinate formats in a flexible vertex format description.
Volume Manipulates volume resources.
VolumeLoader Contains functions for loading and saving volumes.
VolumeTexture Manipulates a volume texture resource.
WasStillDrawingException The device was still drawing.
WrongTextureFormatException The pixel format of the texture surface is not valid.
XFile Retrieves information about XFile file objects.
XFileData Builds or accesses the immediate hierarchy of a data object.
XFileGuid Provides various GUID values for use with XFiles (.x files).
XFileManager Manages XFile (.x) objects.
XFileSaveData Applications use the methods of the XFileSaveData class to add data objects as children of a .x file data node.
XFileSaveObject Creates and saves data objects and templates.


AnimationOutputFlags Defines the flags used to create an AnimationOutput object.
BackBufferType Defines constants that identify the type of back buffers in a swap chain.
BasisType Defines the basis type of a high-order patch surface.
Blend Defines the supported . (The RGBA values of the source and destination are indicated by the subscripts s and d.)
BlendOperation Defines the supported blend operations.
CallbackSearchFlags Defines the flags used to obtain callback information.
Channel Defines flags that specify which channels in a texture to operate on.
CharacterSet Defines a character set.
CleanType Defines vertex operations to perform in preparation for mesh cleaning.
ClearFlags Specifies the buffer to use when calling the Device.Clear method.
ClipStatusFlags Defines the current clip status.
ColorSource Defines the location at which a color or color component must be accessed for lighting calculations.
ColorWriteEnable Defines values that are used to specify a channel in the RenderStateManager class type.
Compare Defines the supported compare functions in the RenderStateManager class type.
CompressionFlags Defines the compression mode to use for storing compressed animation set data.
CompressionQuality Defines SH compression settings.
CreateFlags Defines the flags to use when creating a device.
CubeMapFace Defines the faces of a cube map in the CubeTexture class type.
Cull Defines the supported culling modes, which specify how back faces are culled during geometry rendering.
DeclarationMethod Defines the declaration methods for a vertex declaration.
DeclarationType Defines declaration types for a vertex declaration.
DeclarationUsage Defines declaration usage for a vertex declaration.
DegreeType Defines the degree of the variables in an equation that describes a curve.
DepthFormat Defines depth buffer formats.
DeviceType Specifies a device type.
DisplacementMap Identifies a texture sampler stage.
DrawTextFormat Specifies the method of formatting text.
EffectDefaultType Defines effect data types.
EventType Defines the types of events that can be keyed by the animation controller.
FillMode Defines constants that describe the fill mode.
Filter Defines texture filtering modes for a texture stage.
FogMode Defines constants that describe the fog mode.
FontQuality Specifies the level of font quality.
FontWeight Specifies font weights.
Format Defines various types of surface formats. For a more complete discussion, see Surface Formats.
FX Defines flags for saving shader state.
GpuSimulatorOption Describes the resolution of the shadow z-buffer that will be used in PRT direct lighting simulation on the graphics processing unit (GPU). A higher quality z-buffer can also be specified to reduce noise in the results of the direct lighting simulation, although the simulation will be slower.
ImageFileFormat Defines the supported image file formats.
ImtWrap Flags used by IntegratedMetricTensor methods.
IncludeType Defines an include file.
IssueFlags Defines issue flags.
LightType Defines the light type.
LockFlags Defines the type of lock to perform.
MeshFlags Defines flags used to specify creation options for a mesh.
MultiSampleType Defines the levels of full-scene multisampling that the device can apply.
NormalMap Defines the flags used to convert a height map into a normal map.
ParameterClass Defines the class of the object.
ParameterFlags Defines shader and effect constants.
ParameterType Defines the data contained by the enumeration.
PatchEdge Defines whether the current tessellation mode is discrete or continuous.
PatchType Defines mesh patch types.
PitchAndFamily Defines font families.
PlaybackType Defines the type of looping mode to use for playback of an animation set.
Pool Defines the memory class that holds buffers for a resource.
Precision Specifies the desired output precision.
Present Defines flags that allow the application to request that the SwapChain.Present return immediately when the driver reports that it cannot schedule a presentation.
PresentFlag Defines flags that control a Device.Present operation.
PresentInterval Defines flags that describe the relationship between the adapter refresh rate and the rate at which Device.Present operations are completed.
PrimitiveType Defines the primitives supported by Direct3D.
PriorityType Defines the priority type an animation track is assigned to.
QueryType Defines the query type.
RegisterSet Defines the data type of the register.
RenderStates Defines device render states.
RenderTargetsMax Defines the maximum number of simultaneous render targets supported.
ResourceType Defines resource types.
ResultCode Defines result codes.
SamplerStageStates Defines the sampler state types.
ShadeMode Defines constants that describe the supported shading modes.
ShaderFlags Defines the compiler options to use during a shader compilation.
SpriteFlags Defines flags used to specify sprite rendering options.
StateBlockType Defines logical groups of device states.
StencilOperation Defines the supported stencil operations.
SwapEffect Defines swap effects.
TangentOptions Defines settings used for mesh tangent frame computations.
TextureAddress Defines constants that describe the supported texture-addressing modes.
TextureArgument Defines the supported texture arguments.
TextureCoordinateIndex Defines the supported texture coordinate index values.
TextureFilter Defines texture filtering modes for a texture stage.
TextureOperation Defines per-stage texture-blending operations.
TextureStageStates Defines texture stage states.
TextureTransform Defines texture-stage state values.
TransformType Defines constants that describe transformation state values.
TransitionType Defines the transition style between values of a mesh animation.
Usage Defines supported usage types for the current resource.
VertexBlend Defines enumerated values used to control the number of matrices that the system applies when performing multimatrix vertex blending.
VertexFormats Describes values that define a vertex format used to describe the contents of vertices that are stored interleaved in a single data stream.
WeldEpsilonsFlags Defines the options for welding vertices together.
Wrap Defines texture wrapping.
WrapCoordinates Defines supported wrap coordinates.
XFileErrorCodes Defines XFile error codes. The methods used to work with Microsoft DirectX XFiles can return the following return values. Exceptions thrown from methods that use XFiles can also contain these values.
XFileFormat Defines file formats for XFiles.


AdapterDetails Contains information that identifies the adapter.
AddressCaps Contains the texture addressing capabilities for Texture objects.
AnimationRootFrame Contains the root frame and animation controller in a frame hierarchy.
AttributeRange Stores an attribute table entry.
AttributeWeights Specifies mesh weight attributes.
BandwidthTimings Provides throughput measurement comparisons for help in understanding the performance of an application.
BehaviorFlags Contains a set of properties that indicate the global behavior of a device.
BlendCaps Indicates the supported capabilities.
BoneCombination Describes a subset of the mesh that has the same attribute and bone combination.
BoneInfluences Describes the vertices and weights that a bone influences.
Box Defines a volume.
CacheUtilization Measures the cache hit rate performance for textures and indexed vertices.
CallbackData Retrieves information about animation callbacks.
Caps Represents the capabilities of the hardware exposed through the Direct3D object.
ClipStatus Describes the current clip status.
ColorValue Stores the red, green, blue, and alpha channel values that together define a specific color.
ComparisonCaps Retrieves comparison capabilities.
ConstantDescription Describes a constant in a constant table.
ConstantTableDescription Describes the constant table.
CubeTextureRequirements Contains cube texture creation parameters.
CursorCaps Indicates the hardware support that is available for cursors.
CustomVertex.PositionColored Describes a custom vertex format structure that contains position and color information.
CustomVertex.PositionColoredTextured Describes a custom vertex format structure that contains position, color, and one set of texture coordinates.
CustomVertex.PositionNormal Describes a custom vertex format structure that contains position and normal data.
CustomVertex.PositionNormalColored Describes a custom vertex format structure that contains position, color, and normal data.
CustomVertex.PositionNormalTextured Describes a custom vertex format structure that contains position, normal data, and one set of texture coordinates.
CustomVertex.PositionOnly Describes a custom vertex format structure that contains only position data.
CustomVertex.PositionTextured Describes a custom vertex format structure that contains position and one set of texture coordinates.
CustomVertex.Transformed Describes a custom vertex format structure that contains transformed vertices.
CustomVertex.TransformedColored Describes a custom vertex format structure that contains transformed vertices and color information.
CustomVertex.TransformedColoredTextured Describes a custom vertex format structure that contains transformed vertices, color, and one set of texture coordinates.
CustomVertex.TransformedTextured Describes a custom vertex format structure that contains transformed vertices and one set of texture coordinates.
DeclarationTypeCaps Indicates the type of data formats that are supported in a vertex declaration.
DegenerateItems Indicates the index of patches and vertices that cause the PatchMesh.Validate method to fail.
DeviceCaps Retrieves device-specific information about a device.
DeviceCreationParameters Describes the creation parameters for a device.
DisplacementParameter Contains mesh geometry displacement parameters.
DisplayMode Describes the display mode.
DriverCaps Indicates driver-specific capabilities.
EffectDefault Manages a default effect parameter.
EffectDescription Describes an effect object.
EffectInstance Manages a set of default effect parameters.
EventDescription Describes an animation event.
ExtendedMaterial Returns material information that is saved in DirectX (.x) files.
FilterCaps Indicates texture filter capabilities.
FontDescription Defines the attributes of a font.
FormatList Contains a list of formats supported by the device.
FragmentDescription Describes an annotation used by an effect object.
FunctionDescription Describes a function used by an effect.
GammaRamp Contains red, green, and blue ramp data.
GlyphMetricsFloat Contains information about the position and orientation of the corresponding glyph in the string.
ImageInformation Contains a description of the original contents of an image file.
IndexBufferDescription Describes an index buffer.
InterfaceTimings Provides percentage of time processing data in the driver. These statistics may help identify cases when the driver is waiting for other resources.
IntersectInformation Describes the intersection of a ray and a triangle.
KeyCallback Describes a callback key for use in keyframe animation.
KeyQuaternion Describes a quaternion key for use in keyframe animation, and specifies a quaternion value at a given time.
KeyVector3 Describes a vector key for use in keyframe animation, and specifies a vector at a given time.
LineCaps Defines the capabilities for line-drawing primitives.
LinePattern Describes a line pattern.
LockedBox Describes a locked box (volume).
Macro Describes preprocessor definitions used by an effect object.
Material Specifies material properties.
MeshData Contains mesh data.
MeshOptions Specifies the type of mesh optimization to perform.
MiscCaps Contains miscellaneous driver primitive capabilities.
MyD3DXAllocateHierarchy Not supported.
MyD3DXAnimationCallback Not supported.
MyD3DXFrame Not supported.
MyD3DXIncludeClass Not supported.
MyD3DXLoadUserData Not supported.
MyD3DXMeshContainer Not supported.
MyD3DXSaveUserData Not supported.
PaletteEntry Specifies the color and usage of an entry in a logical palette.
ParameterDescription Describes a parameter that is used for an effect object.
PassDescription Describes a pass for an effect object.
PatchInformation Contains the attributes of a patch mesh.
PipelineTimings Provides percentage of time spent processing data in the pipeline.
PixelShaderCaps Contains pixel shader capabilities.
PropertyDescription Describes a property used for an effect object.
PrtSplitMeshClusterData Contains PRT split mesh cluster data.
PrtSplitMeshVertexData Contains PRT split mesh vertex data.
RasterCaps Contains information about raster drawing capabilities.
RasterStatus Describes the raster status.
RectanglePatchInformation Describes a rectangular high-order patch.
RenderToEnvironmentDescription Describes an off-screen render target.
RenderToSurfaceDescription Describes a render surface.
ResourceManager Contains resource manager usage statistics.
ResourceStats Contains information about the resource manager.
ScaleRotateTranslate Encapsulates scale, rotate and translate structures.
Semantic Maps a parameter to vertex or pixel shader registers.
ShadeCaps Defines shading operation capabilities.
ShaderConstantInformation Contains shader constant information.
ShaderConstantTable Contains the shader constant table that is embedded inside the shader.
ShaderDebugInformation Contains shader debug information.
ShaderFileInformation Contains information about the shader file.
ShaderInstructionInformation Contains data for retrieving shader instruction information.
ShaderStructMemberInformation Contains the shader structure member information.
ShaderTypeInformation Contains shader type information.
ShaderVariableInformation Contains shader variable information.
ShaderWriteInformation Contains the shader write information.
SkinMesh Contains skin information and mesh data.
SphericalHarmonicMaterial Contains SH PRT material characteristics.
StageTimings Provides percentage of time spent processing shader data.
StencilCaps Contains flags that specify supported stencil-buffer operations.
SurfaceDescription Describes a surface.
TechniqueDescription Describes a technique used by an effect.
TextureCaps Contains miscellaneous texture-mapping capabilities.
TextureOperationCaps Contains values that describe the texture operations that the current device supports.
TextureRequirements Contains texture creation parameters.
TrackDescription Describes an animation track and specifies its weight and speed at a given time.
TrianglePatchInformation Describes a triangular high-order patch.
UVAtlasOutput Contains texture atlas data returned from UVAtlas member methods.
ValidateDeviceParams Describes the number of passes and the result code returned from a ValidateDevice call.
VertexBufferDescription Describes a vertex buffer.
VertexCache Defines vertex cache optimization hints.
VertexElement Defines input vertex data to the pipeline.
VertexFormatCaps Specifies the flexible vertex format (FVF) capabilities supported by a device.
VertexProcessingCaps Describes vertex processing capabilities.
VertexShaderCaps Describes vertex shader capabilities.
VertexStats Reports the number of triangles that have been processed and clipped by the runtime's software vertex processing.
Viewport Defines the window dimensions of a render target surface onto which a 3-D volume projects.
VolumeDescription Describes a volume.
VolumeTextureRequirements Contains volume texture creation parameters.
WeldEpsilons Specifies a per-vertex value that is used to weld similar vertices together.


Fill2DTextureCallback Represents the method that handles the FillTexture(Texture,Fill2DTextureCallback) call.
Fill3DTextureCallback Represents the method that handles the FillTexture(VolumeTexture,Fill3DTextureCallback) or FillTexture(CubeTexture,Fill3DTextureCallback) call.
HandleAnimationCallback This delegate is used to handle callbacks triggered by KeyCallbacks in an animation track.
ImtSignalCallback Callback method for IntegratedMetricTensor.ComputeFromSignal.
PercentageCompleteCallback Callback for methods associated with UVAtlas and PRT operations.