Provided by: opengl-4-man-doc_1.0~svn33624-1_all bug

NAME

       gl_HelperInvocation - indicates whether a fragment shader invocation is a helper
       invocation

DECLARATION

       in bool gl_HelperInvocation ;.SH "DESCRIPTION"

       The value gl_HelperInvocation is true if the fragment shader invocation is considered a
       helper invocation and is false otherwise. A helper invocation is a fragment-shader
       invocation that is created solely for the purposes of evaluating derivatives for use in
       non-helper fragment-shader invocations. Such derivatives are computed implicitly in the
       built-in function texture()(), and explicitly in the derivative functions dFdx()() and
       dFdy.

       Fragment shader helper invocations execute the same shader code as non-helper invocations,
       but will not have side effects that modify the framebuffer or other shader-accessible
       memory. In particular:

       •   Fragments corresponding to helper invocations are discarded when shader execution is
           complete, without updating the framebuffer.

       •   Stores to image and buffer variables performed by helper invocations have no effect on
           the underlying image or buffer memory.

       •   Atomic operations to image, buffer, or atomic counter variables performed by helper
           invocations have no effect on the underlying image or buffer memory. The values
           returned by such atomic operations are undefined.

       Helper invocations may be generated for pixels not covered by a primitive being rendered.
       While fragment shader inputs qualified with centroid are normally required to be sampled
       in the intersection of the pixel and the primitive, the requirement is ignored for such
       pixels since there is no intersection between the pixel and primitive.

       Helper invocations may also be generated for fragments that are covered by a primitive
       being rendered when the fragment is killed by early fragment tests (using the
       early_fragment_tests qualifier) or where the implementation is able to determine that
       executing the fragment shader would have no effect other than assisting in computing
       derivatives for other fragment shader invocations.

       The set of helper invocations generated when processing any set of primitives is
       implementation dependent.

VERSION SUPPORT

       ┌────────────────────┬───────────────────────────────────────────────────────────────────────────────────┐
       │                    │        OpenGL Shading Language Version                                            │
       ├────────────────────┼──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┤
       │Variable1.101.201.301.401.503.304.004.104.204.304.404.50 │
       │Name                │      │      │      │      │      │      │      │      │      │      │      │      │
       ├────────────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │gl_HelperInvocation │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │
       └────────────────────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘

SEE ALSO

       dFdx(), texture()

COPYRIGHT

       Copyright © 2014 Khronos Group. This material may be distributed subject to the terms and
       conditions set forth in the Open Publication License, v 1.0, 8 June 1999.
       http://opencontent.org/openpub/.

COPYRIGHT

       Copyright © 2014 Khronos Group

[FIXME: source]                             01/03/2018                    GL_HELPERINVOCATION(3G)