GLSL: Fix bug setting component=0 for an auto-location assignment.

Setting component=0 is later taken to mean the shader did so, which
is not always legal. It should instead set the component as not set
by the shader.
This commit is contained in:
John Kessenich 2017-06-04 13:17:20 -06:00
parent 8de7e7bf14
commit 94c18a84cd
7 changed files with 21 additions and 22 deletions

View file

@ -33,8 +33,8 @@ ERROR: node is still EOpNull!
0:? Linker Objects
0:? 'gl_in' ( in 32-element array of block{ in 3-element array of float CullDistance gl_CullDistance})
0:? 'gl_out' ( out 4-element array of block{ out 3-element array of float CullDistance gl_CullDistance})
0:? 'bInst1' ( out 2-element array of block{layout( location=4 component=0) out float f, layout( location=5) out float g})
0:? 'bInst2' ( out 2-element array of 3-element array of block{layout( location=6 component=0) out float f, layout( location=7) out float g})
0:? 'bInst1' ( out 2-element array of block{layout( location=4) out float f, layout( location=5) out float g})
0:? 'bInst2' ( out 2-element array of 3-element array of block{layout( location=6) out float f, layout( location=7) out float g})
Linked tessellation control stage:
@ -70,6 +70,6 @@ ERROR: node is still EOpNull!
0:? Linker Objects
0:? 'gl_in' ( in 32-element array of block{ in 3-element array of float CullDistance gl_CullDistance})
0:? 'gl_out' ( out 4-element array of block{ out 3-element array of float CullDistance gl_CullDistance})
0:? 'bInst1' ( out 2-element array of block{layout( location=4 component=0) out float f, layout( location=5) out float g})
0:? 'bInst2' ( out 2-element array of 3-element array of block{layout( location=6 component=0) out float f, layout( location=7) out float g})
0:? 'bInst1' ( out 2-element array of block{layout( location=4) out float f, layout( location=5) out float g})
0:? 'bInst2' ( out 2-element array of 3-element array of block{layout( location=6) out float f, layout( location=7) out float g})