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

Deleting last View3D of a window deletes also the render context, which is not recreated properly for the next created view

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P1: Critical
    • 6.0.0
    • 6.0.0 Alpha
    • Quick: 3D
    • None
    • 1
    • 97cf0fb8f3f0cbc401b9d8ad2e3c9d9b7636c87b
    • Qt Quick 3D - Week 43/44, Qt Quick 3D - Week 45/46

    Description

      Deleting last View3D of a window deletes also the render context, which is not recreated properly for the next created view. Use attached example to repro.

      A simple workaround is to always have a permanent dummy View3D in windows where you dynamically create and delete views.

      call stack:

      1  QHash<QSSGRenderPath,QSSGRenderMesh *>::isEmpty   qhash.h                     799  0x7ff9e4a0c33e 
      2  QHash<QSSGRenderPath,QSSGRenderMesh *>::find      qhash.h                     1083 0x7ff9e4a07582 
      3  QHash<QSSGRenderPath,QSSGRenderMesh *>::constFind qhash.h                     1092 0x7ff9e49fe1c7 
      4  QSSGBufferManager::loadMesh                       qssgrenderbuffermanager.cpp 1375 0x7ff9e49d6907 
      5  QSSGBufferManager::loadMesh                       qssgrenderbuffermanager.cpp 1119 0x7ff9e49d3040 
      6  QSSGRenderModel::getModelBounds                   qssgrendermodel.cpp         49   0x7ff9e494e2e5 
      7  QQuick3DSceneManager::updateBoundingBoxes         qquick3dscenemanager.cpp    111  0x7ff9e42b376a 
      8  QQuick3DSceneRenderer::synchronize                qquick3dscenerenderer.cpp   571  0x7ff9e42b9b0c 
      9  QQuick3DViewport::updatePaintNode                 qquick3dviewport.cpp        382  0x7ff9e42e0ec5 
      10 QQuickWindowPrivate::updateDirtyNode              qquickwindow.cpp            3755 0x7ff9dc502baf 
      11 QQuickWindowPrivate::updateDirtyNodes             qquickwindow.cpp            3501 0x7ff9dc5019dd 
      12 QQuickWindowPrivate::syncSceneGraph               qquickwindow.cpp            597  0x7ff9dc500837 
      13 QSGRenderThread::sync                             qsgthreadedrenderloop.cpp   595  0x7ff9dc40c5d1 
      14 QSGRenderThread::syncAndRender                    qsgthreadedrenderloop.cpp   736  0x7ff9dc40bb98 
      15 QSGRenderThread::run                              qsgthreadedrenderloop.cpp   995  0x7ff9dc40adf0 
      16 QThreadPrivate::start                             qthread_win.cpp             328  0x7ff9e2a8d874 
      17 BaseThreadInitThunk                               KERNEL32                         0x7ffa487d7974 
      18 RtlUserThreadStart                                ntdll                            0x7ffa4b60a271 
       

      Attachments

        For Gerrit Dashboard: QTBUG-87678
        # Subject Branch Project Status CR V

        Activity

          People

            anmaatta Antti Määttä
            e0348803 Miikka Heikkinen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes