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

Scene3D.Underlay does not work with RHI

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.6.0
    • Qt3D
    • None

    Description

      If you use compositingMode and set it to Scene3D.Underlay instead of FBO, Qt3D with RHI backend will draw white

          Scene3D {
              id: sceneId
              anchors.fill: parent
              focus: true
              aspects: ["render", "input", "logic"]
              entity: rootEntity
              compositingMode: Scene3D.Underlay
          }

      The result of Scene3D.Underlay

      What's expected:

      Looking at the Qt3D source code, it doesn't currently support underlay. 

          const bool usesFBO = scene3DRenderer->m_compositingMode == Scene3DItem::FBO;
          // Not sure how we could support underlay rendering properly given Qt3D RHI will render into its own
          // RHI RenderPasses prior to QtQuick and beginning a new RenderPass clears the screen
          Q_ASSERT(usesFBO);

      The application should have asserted here, but it doesn't. Supporting underlay with RHI seems possible given there's a Qt example about it: https://doc.qt.io/qt-6/qtquick-scenegraph-rhiunderqml-example.html

      I've attached a demo program that shows the issue.

      Attachments

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

        Activity

          People

            seanharmer Sean Harmer
            vpicaver Philip Schuchardt
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes