| Conformance Test |
| |
| CTS_ARB_shader_viewport_layer_array |
| |
| Contributors |
| |
| Filip Demczewski, Mobica |
| |
| Contacts |
| |
| Filip Demczewski, Mobica (filip.demczewski 'at' mobica.com) |
| |
| Status |
| |
| In review |
| |
| Version |
| |
| December 13, 2016 (version 1) |
| |
| Dependencies |
| |
| OpenGL 4.1 is required. |
| |
| ARB_shader_viewport_layer_array extension is required. |
| |
| This specification is written against: |
| - ARB_shader_viewport_layer_array specification, |
| - OpenGL 4.5 (core) specification. |
| |
| Overview |
| |
| This tests verifies if functionality provided by ARB_shader_viewport_layer_array |
| works as expected: |
| |
| * Verify if gl_Layer and gl_ViewportIndex outputs can be written directly from |
| vertex and tessalation shaders |
| |
| New Tests |
| |
| gl_ViewportIndex test |
| |
| * Create multiple viewports (MAX_VIEWPORTS) |
| Iterate through all supported shader pipelines |
| a) vertex + fragment |
| b) vertex + tcs + tes + fragment |
| c) vertex + tcs + tes + geometry + fragment |
| Render primitive for each viewport with different output color. |
| Validate output color for each viewport. |
| Make sure that viewport index is taken from the gl_ViewportIndex output |
| of the last active vertex processing stage. |
| |
| gl_Layer test |
| |
| * Create framebuffer with multiple layers |
| Iterate through all supported shader pipelines |
| a) vertex + fragment |
| b) vertex + tcs + tes + fragment |
| c) vertex + tcs + tes + geometry + fragment |
| Render primitive for each layer with different output color. |
| Validate output color for each layer. |
| Make sure that layer is taken from the gl_Layer output |
| of the last active vertex processing stage. |
| Make sure that the layer number written by a vertex procesing |
| shader has no effect if the framebuffer is not layered. |
| |
| Revision History |
| |
| Revision 1, 13 December, 2016 (Filip Demczewski) |
| - Intial version; |