Commit Graph

6 Commits

Author SHA1 Message Date
Paul Lemire 56d828078c RenderQueue: switch to std::vector
Change-Id: I49ab3985ee01e40950bcd981dc77139a28f8db6a
Reviewed-by: Mike Krus <mike.krus@kdab.com>
2020-07-03 23:14:18 +02:00
Paul Lemire 41be0c3e04 Fix manual-renderloop test
Set the QRenderAspect to the manual SubmissionType to avoid the application
rendering atuomatically and eventually deadlocking

Change-Id: Idd38948af5c2ebd792b61c5ce5177138469295a0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
2020-06-25 08:20:14 +02:00
Mike Krus 2b749055c7 Remove the OpenGL Render Thread
We're trading a bit of performance at submission (since we could start
preparing the next frame while submitting the current one) for convenience
and ease of maintenance.

Besides, this allows to remove a thread and in cases Qt3D was used with
Scene3D, which is likely the majority of cases, the RenderThread was not
used anyway.

To control whether the QRenderAspect should submit on its own or not,
a new Submission type enum with values Automatic/Manual was added.
This allows the QRenderAspect to automatically perform command submission
when Qt3D is used on its own. For other cases when Qt3D is integrated
into a 3rd party engine or with Scene3D, the Manual mode is used
to let the QRenderAspect render only when it is told to do so.

Change-Id: Idc270b5a07bcb9ea9e61674a69c6b8cf6ccd8182
Reviewed-by: Mike Krus <mike.krus@kdab.com>
2020-06-19 20:20:50 +01:00
Mike Krus 764924da8a Fix build for Qt6
- updated dependencies, excluding qtgamepad for now
- fixed issues with Q_PROPERTY not supporting forward declarations
- fixed for changes in QtQuick private API
- fixed for changes in QtOpenGLVersionFunctions API
- fixed for removal of QT_OPENGL_ES* macros
- fixed for changes in QtConcurrent API
- fixed RHI based build

Change-Id: I42ccd2f101b7f0a78e2860c6d551722bf6710a11
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
2020-05-06 15:29:54 +02:00
Mike Krus 5bf4f93fcb Make default geometries views
In Extras, make QTorusMesh and others a QGeometryView rather than
a QGeometryRenderer. Requires changes to scene graphs here and there
but going forward there simple shapes could be used as proxies for
picking or collision detection, etc.

Change-Id: Id488e064080dfd303e448aba11e6b242236b81d4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
2020-02-27 12:10:08 +00:00
Paul Lemire 8c4520c93a Add manual test to check manual render loop
Shows that update are done before rendering takes place

Change-Id: Ia3f5bcb497c023dad805609dcb1ffe9ce7947c06
Task-number: QTBUG-79375
Reviewed-by: Mike Krus <mike.krus@kdab.com>
2019-10-25 11:54:45 +02:00