Additional semantic checking for tessellation shaders and related clean up:
- non-arrayed geometry inputs and tessellation-control outputs - include user blocks in i/o array resizing based on primitive type - things belonging only to 'in' or 'out' are verified only on 'in' or 'out' - invocation number changing - move shader-scoped qualifier checking into its class - remove an incidental union of two levels of the node hierarchy in the yacc stack - remove layout(location=) default tracking when setting on a variable git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24551 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
13
Todo.txt
13
Todo.txt
@@ -17,6 +17,7 @@ Link Validation
|
||||
- 1.3: only statically used built-ins have to be redeclared as flat
|
||||
- 1.5: matching between gl_PerVertex blocks and gl_PerFragment blocks
|
||||
- 1.3: deprecated mixing fixed vertex/fragment stage with programmable fragment/vertex stage.
|
||||
+ 4.0: tessellation primitive, vertices, spacing, order,
|
||||
- 4.3: compute shader not combined with any other stages
|
||||
- 4.3: remove cross-version linking restrictions.
|
||||
- 4.3: Allow mismatches in interpolation and auxiliary qualification across stages.
|
||||
@@ -26,8 +27,8 @@ Link Validation
|
||||
- limits checking:
|
||||
+ bindings
|
||||
- number of input/output compononents
|
||||
- tessellation limits
|
||||
- tessellation primitive array sizing consistency
|
||||
+ tessellation limits
|
||||
+ tessellation primitive array sizing consistency
|
||||
+ Non ES: gl_TexCoord can only have a max array size of up to gl_MaxTextureCoords
|
||||
+ Non ES: gl_ClipDistance ...
|
||||
- ...
|
||||
@@ -106,10 +107,10 @@ Shader Functionality to Implement/Finish
|
||||
+ texel offset limit checking
|
||||
+ 1.50: geometry shaders: max_vertices must be checked against gl_MaxGeometryOutputVertices (maybe at compile time)
|
||||
GLSL 4.0
|
||||
- tessellation control stage and tessellation evaluation stage. Includes barrier() built-in for synchronization.
|
||||
- patch in, patch out
|
||||
- input/output arrays
|
||||
- unsized array sizing to gl_MaxPatchVertices, including gl_in/gl_out
|
||||
+ tessellation control stage and tessellation evaluation stage. Includes barrier() built-in for synchronization.
|
||||
+ patch in, patch out
|
||||
+ input/output arrays
|
||||
+ unsized array sizing to gl_MaxPatchVertices, including gl_in/gl_out
|
||||
+ built-in variables, functions, and constants verification
|
||||
+ layout qualifiers for primitive types
|
||||
- Polymorphic functions: Run-time selection of what function gets called, through the new keyword subroutine.
|
||||
|
||||
Reference in New Issue
Block a user