Resource Limits (Direct3D 10)

This table contains a list of the minimum resources supported by Direct3D 10.

Resource Limit
Number of elements in a constant buffer 4096
Number of texels (independent of struct size) in a buffer 227 texels
Texture1D U dimension 8192
Texture1DArray dimension 512 Array Slices
Texture2D U/V dimension 8192
Texture2DArray dimension 512 Array Slices
Texture3D U/V/W dimension 2048
TextureCube dimension 8192
Resource size (in MB) 128 MB¹
Anisotropic filtering maxanisotropy 16
Resource dimension addressable by filtering hardware 8192 per dimension
Resource size (in MB) addressable by IA (input or vertex data) or VS/GS/PS (point sample) 128 MB¹
Total number of resource views per context (Each array counts as 1) (all view types have shared limit) 220
Buffer structure size (multi-element) 2048 bytes
Stream output size Same as the number of texels in a buffer (see above)
Draw or DrawInstanced vertex count (including instancing) 232
DrawIndexed[Instanced]() vertex count (incl. instancing) 232
GS invocation output data (components * vertices) 1024
Total number of sampler objects per context 4096
Total number of viewport/scissor objects per pipeline 16
Total number of clip/cull distances per vertex 8
Total number of blend objects per context 4096
Total number of depth/stencil objects per context 4096
Total number of rasterizer state objects per context 4096
Maximum per-pixel sample count during multisampling 32
Shader resource vertex-element count (four 32-bit components) 16
Common-shader core (four 32-bit components) temp-register count (r# + indexable x#[n]) 4096
Common-shader core constant-buffer slots 14
Common-shader core input-resource slots 128
Common-shader core sampler slots 16
Common-shader core subroutine-nesting limit 32
Common-shader core flow-control nesting limit 64
Vertex shader input-register count (four 32-bit components) 16
Vertex shader output-register count (four 32-bit components) 16
Geometry shader input-register count (four 32-bit components) 16
Geometry shader output-register count (four 32-bit components) 32
Pixel shader input-register count (four 32-bit components) 32
Pixel shader output-register count (four 32-bit components) 8
Pixel shader output depth register count(32-bit*1-component) 1
Input assembler index input resource slots 1
Input assembler vertex input resource slots 16

 

¹Apps can create resources bigger than the maximum resource size on some graphics hardware. However, we recommend that apps keep resources smaller than the maximum resource size to get the maximum amount of compatibility across graphics vendors. The runtime only guarantees that allocations within the maximum resource size are supported by all Direct3D 10 hardware. If an app tries to allocate memory for a resource within the maximum resource size, the runtime fails the attempt only if the operating system runs out of resources. If an app tries to allocate memory for a resource above the maximum resource size, the runtime can fail the attempt because either the operating system is overextended or the hardware does not support allocations above the maximum resource size.

Resources (Direct3D 10)