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

Generated shader code violates the ES 3.2 specification

    XMLWordPrintable

    Details

    • Commits:
      8d04fda51ae00cdb8f6aa1eb68ade24aea1750ac

      Description

      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.

        Attachments

          Issue Links

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

            Activity

              People

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

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes