1 Reply Latest reply on Jan 10, 2018 1:01 PM by Intel Corporation

    Geometry Shader Bug

    HenZap

      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.

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

       

      Thanks!