SPV_NV_viewport_array2which allows a single primitive to be broadcast to multiple viewports and/or multiple layers. A new shader built-in output ViewportMaskNV is provided, which allows a single primitive to be output to multiple viewports simultaneously. Also, a new SPIR-V decoration is added to control whether the effective viewport index is added into the variable decorated with the Layer built-in decoration. These capabilities allow a single primitive to be output to multiple layers simultaneously.
This extension allows variables decorated with the Layer and ViewportIndex built-ins to be exported from vertex or tessellation shaders, using the ShaderViewportIndexLayerNV capability.
This extension adds a new ViewportMaskNV built-in decoration that is available for output variables in vertex, tessellation evaluation, and geometry shaders, and a new ViewportRelativeNV decoration that can be added on variables decorated with Layer when using the ShaderViewportMaskNV capability.
When using GLSL source-based shading languages, the gl_ViewportMask[] built-in output variable and viewport_relative layout qualifier from GL_NV_viewport_array2 map to the ViewportMaskNV and ViewportRelativeNV decorations, respectively. Behaviour is described in the GL_NV_viewport_array2 extension specification.
The ShaderViewportIndexLayerNV capability is equivalent to the ShaderViewportIndexLayerEXT capability added by VK_EXT_shader_viewport_index_layer.
VK_NV_viewport_array2SPV_NV_viewport_array2GL_NV_viewport_array2geometryShader and multiViewport features.tessellationShader feature.| Modifier and Type | Field and Description |
|---|---|
| public static final String | VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME
The extension name. |
| public static final int | VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION
The extension specification version. |
| public static final String | VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME
The extension name. |
| public static final int | VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION
The extension specification version. |
| Access | Constructor and Description |
|---|---|
| private |
| VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME | back to summary |
|---|---|
| public static final String VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME The extension name. | |
| VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION | back to summary |
|---|---|
| public static final int VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION The extension specification version. | |
| VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME | back to summary |
|---|---|
| public static final String VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME The extension name. | |
| VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION | back to summary |
|---|---|
| public static final int VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION The extension specification version. | |
| NVViewportArray2 | back to summary |
|---|---|
| private NVViewportArray2() | |