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

Performance issue with added sub-presentation or qml content

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: Qt 3D Studio 2.8
    • Fix Version/s: None
    • Component/s: OpenGL Runtime
    • Labels:
      None
    • Platform/s:
      Integrity, Windows
    • Commits:
      36121a1993664b79d4d709c9a9ee92b464cb859e, e907255b007581a6a44fdc7f3a8ae3349ae9cc1d

      Description

      After logging, we found that if the layer has a rectangle with a visible sub-presentation or qml content, then the entire layer is rendered every frame, regardless of the contents of this layer and the sub-presentation, and the m_LastRenderWasDirty = true variable in struct SApp in Qt3DSApplication.cpp, if there is a sub-presentation , or qml content in layer, permanently. This was detected by the NVRenderBackendGLBase::DrawIndexed call counter for rendering a presentation with and without a sub-presentation (qml content). It is also suggested not to Render if dirty == false in UpdateAndRender() in struct SApp in Qt3DSApplication.cpp. All this gives a big performance gain, we tested it.
      Could you please comment on this. Does it make sense to change the code in this way and could you check and do it on your side, since by agreement we cannot change the code of the 3D studio on our own?

      Reproduce:
      1. Apply a patch test_patch.diff to ogl-runtime.
      2. Build and run the test application TestApp.zip
      If "Subpresentation" is visible image-2021-04-26-18-59-35-808.png , then the logs show that all objects in the layer are rendered even after the end of the timeline. If "Subpresentation" is not visible image-2021-04-26-18-58-01-069.png , then after the end of the timeline, only one object is drawn (the layer itself).

        Attachments

        1. image-2021-04-26-18-58-01-069.png
          image-2021-04-26-18-58-01-069.png
          27 kB
        2. image-2021-04-26-18-59-35-808.png
          image-2021-04-26-18-59-35-808.png
          26 kB
        3. patch_dirty_resize.diff
          3 kB
        4. patch_dirty.diff
          0.6 kB
        5. test_patch.diff
          2 kB
        6. TestApp_QML.zip
          9 kB
        7. TestApp.zip
          9 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

            Assignee:
            anmaatta Antti Määttä
            Reporter:
            dmitry_efimov DMITRIY EFIMOV
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes