PDA

View Full Version : Separated Shader Objects : not declared in input from next stage.



execom_rt
07-15-2017, 09:55 AM
Does anybody tried the separated shader objects on Android ? I want to create a shader without may output variables, but want to use a shader that ignore them.


Vertex Shader



#version 310 es#extension GL_EXT_shader_io_blocks: enable
precision highp float;


out vec2 texCoord0;
in vec4 attr_Vertex;
in vec2 attr_TexCoord;
void main()
{
gl_Position = attr_Vertex;
texCoord0 = attr_TexCoord;
}





Fragment Shader



#version 310 es
#extension GL_EXT_shader_io_blocks: enable
precision highp float;
void main() {} // Do nothing, (ie, for a depth only shader)






Go this error during pipeline validation

Error: output texCoord0 not declared in input from next stage.


However this is working on Desktop OpenGL and iOS with GL_EXT_shader_separated_objects
This is legit : I have many vertex shaders and want to perform a depth pass only with a special fragment shader which don't need the input (could be also shadow map generation for example).