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

QSGRenderNode needs a prepare() function (or at minimum, an internal callback) to properly support the typical two-phase prepare-render approach

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • P2: Important
    • 5.15
    • None
    • Qt RHI, Quick: SceneGraph
    • None

    Description

      QTBUG-82793 shows that Qt Quick 3D is unable to implement its behavior for the Inline View3D render mode because QSGRenderNode only has a render() virtual, whereas Quick3D would need access to the matrix() already in the prepare step, and there is no suitable virtual in QSGRenderNode atm.

      Also needs a flag to indicate whether QRhiCommandBuffer::beginExternal() should be called. (because if the render() implementation is using QRhi then the answer is NO)

      This will be done in two parts:

      • Quick3D can live with using QSGRenderNodePrivate. So will just add a callback there.
      • Once the dev branches are usable, this can be changed to a virtual prepare() function in QSGRenderNode.

      Attachments

        Issue Links

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

          Activity

            People

              lagocs Laszlo Agocs
              lagocs Laszlo Agocs
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes