D3D12_SHADER_VISIBILITY enumeration (d3d12.h)

Specifies the shaders that can access the contents of a given root signature slot.

Syntax

typedef enum D3D12_SHADER_VISIBILITY {
  D3D12_SHADER_VISIBILITY_ALL,
  D3D12_SHADER_VISIBILITY_VERTEX,
  D3D12_SHADER_VISIBILITY_HULL,
  D3D12_SHADER_VISIBILITY_DOMAIN,
  D3D12_SHADER_VISIBILITY_GEOMETRY,
  D3D12_SHADER_VISIBILITY_PIXEL,
  D3D12_SHADER_VISIBILITY_AMPLIFICATION,
  D3D12_SHADER_VISIBILITY_MESH
} ;

Constants

 
D3D12_SHADER_VISIBILITY_ALL
Specifies that all shader stages can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_VERTEX
Specifies that the vertex shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_HULL
Specifies that the hull shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_DOMAIN
Specifies that the domain shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_GEOMETRY
Specifies that the geometry shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_PIXEL
Specifies that the pixel shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_AMPLIFICATION
Specifies that the amplification shader stage can access whatever is bound at the root signature slot.
D3D12_SHADER_VISIBILITY_MESH
Specifies that the mesh shader stage can access whatever is bound at the root signature slot.

Remarks

This enum is used by the D3D12_ROOT_PARAMETER structure.

The compute queue always uses D3D12_SHADER_VISIBILITY_ALL because it has only one active stage. The 3D queue can choose values, but if it uses D3D12_SHADER_VISIBILITY_ALL, all shader stages can access whatever is bound at the root signature slot.

Requirements

   
Header d3d12.h

See also

Core Enumerations