Home -> IGraphicsDevice -> ShaderLimits
Description
The ShaderLimits structure reports information on limits an IGraphicsDevice object has which relate to shaders, as returned by the GetShaderLimits method.
Members
| Name | Type | Description | |
|---|---|---|---|
| maxVertexShaderInputAttributes | uint32_t |
Reports the maximum number of vertex attributes which can be bound to a single IRenderableNode
object, taking the combined sum of attributes bound with BindVertexAttribute
and BindVertexInstanceAttribute.
Note that unlike other values in this structure, this limit does refer to complete bound attributes, and does
not count the individual components within each attribute separately.
|
|
| maxVertexShaderOutputComponents | uint32_t |
Reports the maximum number of individual components which can be output from a vertex shader. Note that where a
vector type is being used, each discrete value within a vector counts as one component towards this total.
|
|
| maxGeometryShaderInputComponents | uint32_t |
Reports the maximum number of individual components which can be input to a geometry shader. Note that where a
vector type is being used, each discrete value within a vector counts as one component towards this total.
|
|
| maxGeometryShaderOutputComponents | uint32_t |
Reports the maximum number of individual components which can be output from a geometry shader per vertex. Note
that where a vector type is being used, each discrete value within a vector counts as one component towards this
total.
|
|
| maxGeometryShaderOutputVertices | uint32_t |
Reports the maximum number of vertices that can be emitted by a geometry shader for each single input primitive
it is supplied. Note that attention must also be paid to the maxGeometryShaderOutputComponents
and maxGeometryShaderTotalOutputComponents members. For a given geometry shader, where "X"
vertices are emitted for a given input primitive, and "Y" output components are emitted for each vertex, the
total number of output components is "X * Y". This value must not exceed maxGeometryShaderTotalOutputComponents,
even if neither maxGeometryShaderOutputComponents or maxGeometryShaderOutputVertices
are exceeded.
|
|
| maxGeometryShaderTotalOutputComponents | uint32_t |
Reports the maximum total number of output components that can emitted by a geometry shader for each single
input primitive it is supplied.
|
|
| maxFragmentShaderInputComponents | uint32_t |
Reports the maximum number of individual components which can be input to a fragment shader. Note that where a
vector type is being used, each discrete value within a vector counts as one component towards this total.
|