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