Uploaded image for project: 'Qt 3D Studio'
  1. Qt 3D Studio
  2. QT3DS-3173

Generated shader code violates the ES 3.2 specification

XMLWordPrintable

    • 8d04fda51ae00cdb8f6aa1eb68ade24aea1750ac

      The provided carpaint_color_peel_2_layer.shader will generates a fragment shader with two outputs:

      out vec4 fragOuput;
      ...
      out vec4 fragColor;
      

      This violates section 14.2.3 of the ES 3.2 spec (https://www.khronos.org/registry/OpenGL/specs/es/3.2/es_spec_3.2.pdf), which states: "If there is only a single output variable, it does not need to
      be explicitly bound to a fragment color within the shader text, in which case it is implicitly bound to fragment color zero. If there is more than one output variable, all output variables must be explicitly bound to fragment colors within the shader text. Missing or conflicting binding assignments will cause CompileShader to fail."

      and produces the following error:

      error: fragment shader's output location has to be explicitly specified
      

      It is also possible that other materials in the material library will have the same issue.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            tokorpip Tomi Korpipää
            andysh Andy Shaw
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes