Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-53527

QML ShaderProgram does not recompile the shader when the shader code changes

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 5.5.1, 5.6.0
    • Fix Version/s: 5.7.0 RC
    • Component/s: Qt3D
    • Labels:
      None
    • Commits:
      784c89cedb817c8329edcc7ec53dad23a9cae1f2

      Description

      I have an application that changes the content of vertexShaderCode and fragmentShaderCode of the QML type ShaderProgram. Instead of recompiling and applying the new shader nothing happens. The application still uses the old shader code and continues to render. I can see that the new shader is loaded because onVertexShaderCodeChanged and onFragmentShaderCodeChanged both get called, but I can also see that the shader is not compiled because even if I provide faulty shader code I get no error message. I used loadSource() to update the shader code based on a changeable QRC URL modified from C++.

      I am under the impression that updating the code should cause ShaderProgram to recompile and apply the new shader. If necessary I could see if I could provide a small example for this behavior.

        Attachments

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

          Activity

            People

            • Assignee:
              seanharmer Sean Harmer
              Reporter:
              maltek Malte Klug
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Gerrit Reviews

                There are no open Gerrit changes