Vulkan-Docs/appendices/VK_EXT_shader_viewport_inde...

93 lines
2.7 KiB
Plaintext

include::meta/VK_EXT_shader_viewport_index_layer.txt[]
*Last Modified Date*::
2017-08-08
*Interactions and External Dependencies*::
- This extension requires the
https://www.khronos.org/registry/spir-v/extensions/EXT/SPV_EXT_shader_viewport_index_layer.html[+SPV_EXT_shader_viewport_index_layer+]
SPIR-V extension.
- This extension requires the
https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_shader_viewport_layer_array.txt[+GL_ARB_shader_viewport_layer_array+],
https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_vertex_shader_layer.txt[+GL_AMD_vertex_shader_layer+],
https://www.khronos.org/registry/OpenGL/extensions/AMD/AMD_vertex_shader_viewport_index.txt[+GL_AMD_vertex_shader_viewport_index+],
or
https://www.khronos.org/registry/OpenGL/extensions/NV/NV_viewport_array2.txt[+GL_NV_viewport_array2+]
extensions for GLSL source languages.
- This extension requires the pname:multiViewport feature.
- This extension interacts with the pname:tessellationShader feature.
*Contributors*::
- Piers Daniell, NVIDIA
- Jeff Bolz, NVIDIA
- Jan-Harald Fredriksen, ARM
- Daniel Rakos, AMD
- Slawomir Grajeswki, Intel
This extension adds support for the code:ShaderViewportIndexLayerEXT
capability from the +SPV_EXT_shader_viewport_index_layer+ extension in
Vulkan.
This extension allows variables decorated with the code:Layer and
code:ViewportIndex built-ins to be exported from vertex or tessellation
shaders, using the code:ShaderViewportIndexLayerEXT capability.
When using GLSL source-based shading languages, the code:gl_ViewportIndex
and code:gl_Layer built-in variables map to the SPIR-V code:ViewportIndex
and code:Layer built-in decorations, respectively.
Behaviour of these variables is extended as described in the
+GL_ARB_shader_viewport_layer_array+ (or the precursor
+GL_AMD_vertex_shader_layer+, +GL_AMD_vertex_shader_viewport_index+, and
+GL_NV_viewport_array2 extensions+).
ifdef::VK_NV_viewport_array2[]
[NOTE]
.Note
====
The code:ShaderViewportIndexLayerEXT capability is equivalent to the
code:ShaderViewportIndexLayerNV capability added by
`<<VK_NV_viewport_array2>>`.
====
endif::VK_NV_viewport_array2[]
=== New Object Types
None.
=== New Enum Constants
None.
=== New Enums
None.
=== New Structures
None.
=== New Functions
None.
=== New or Modified Built-In Variables
* (modified) <<interfaces-builtin-variables-layer,code:Layer>>
* (modified)
<<interfaces-builtin-variables-viewportindex,code:ViewportIndex>>
=== New Variable Decoration
None.
=== New SPIR-V Capabilities
* <<spirvenv-capabilities-table-shader-viewport-index-layer,code:ShaderViewportIndexLayerEXT>>
=== Issues
None yet!
=== Version History
* Revision 1, 2017-08-08 (Daniel Koch)
- Internal drafts