Geometry Shader Bug

Geometry Shader Bug

I have an ongoing problem with the Intel shader compiler for Intel HD Graphics cards (most of the ones I have tested).

The issue is related to utilizing a geometry shader, in which I will receive this message:

'The fragment shader uses varying uv, but previous shader does not write to it.  Out of resource error.'

This is a bug, pure and simple, easily described as the fact that the shader compiler does not properly see that there is a geometry shader in the pipeline.

I can elaborate more if the above post is does not provide enough information, but it is actually quite simple:

 

My vertex shader uses:

out vData

{

vec2 pos;

} vertex;

 

My geometry shader uses:

in vData

{

vec2 pos;

}vertex[];

 

out gData

{

vec2  uv;

}frag;

 

And my fragment shader uses:

in gData

{

vec2  uv;

}frag;

 

This is easy to diagnose:

A vertex -> fragment pipeline does not write 'varying uv', but the geometry shader is the true 'previous shader', so this is a bug and therefore Intel HD Graphics does not meet the criterion for OpenGL support.

(It is bad form and likely illegal to claim OpenGL support when the conformant requirements are not met)

 

FYI:  Nvidia and AMD have no issues whatsoever compiling the same shaders.

 

Thanks!

1 post / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.