summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.qmake.conf2
-rw-r--r--src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp2
-rw-r--r--src/render/backend/managers_p.h2
-rw-r--r--src/render/picking/objectpicker.cpp5
-rw-r--r--tests/auto/render/objectpicker/tst_objectpicker.cpp15
5 files changed, 23 insertions, 3 deletions
diff --git a/.qmake.conf b/.qmake.conf
index a17c06927..f690718eb 100644
--- a/.qmake.conf
+++ b/.qmake.conf
@@ -6,4 +6,4 @@ load(qt_build_config)
DEFINES += QT_NO_FOREACH
DEFINES += QT_NO_JAVA_STYLE_ITERATORS
-MODULE_VERSION = 5.15.3
+MODULE_VERSION = 5.15.5
diff --git a/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp b/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp
index ab5948e49..ef32594e1 100644
--- a/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp
+++ b/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp
@@ -1598,7 +1598,7 @@ void SubmissionContext::blitFramebuffer(Qt3DCore::QNodeId inputRenderTargetId,
if (!outputBufferIsDefault) {
// Note that we use glDrawBuffers, not glDrawBuffer. The
// latter is not available with GLES.
- const int buf = glAttachmentPoint(outputAttachmentPoint);
+ const int buf = outputAttachmentPoint;
drawBuffers(1, &buf);
}
diff --git a/src/render/backend/managers_p.h b/src/render/backend/managers_p.h
index a3d42d24a..864c168be 100644
--- a/src/render/backend/managers_p.h
+++ b/src/render/backend/managers_p.h
@@ -200,7 +200,7 @@ public:
class Q_3DRENDERSHARED_PRIVATE_EXPORT ShaderManager : public Qt3DCore::QResourceManager<
Shader,
Qt3DCore::QNodeId,
- Qt3DCore::NonLockingPolicy>
+ Qt3DCore::ObjectLevelLockingPolicy>
{
public:
ShaderManager() {}
diff --git a/src/render/picking/objectpicker.cpp b/src/render/picking/objectpicker.cpp
index 2835d1b0e..182e1af55 100644
--- a/src/render/picking/objectpicker.cpp
+++ b/src/render/picking/objectpicker.cpp
@@ -83,6 +83,11 @@ void ObjectPicker::syncFromFrontEnd(const Qt3DCore::QNode *frontEnd, bool firstT
BackendNode::syncFromFrontEnd(frontEnd, firstTime);
+ if (firstTime) {
+ markDirty(AbstractRenderer::AllDirty);
+ notifyJob();
+ }
+
if (node->isHoverEnabled() != m_hoverEnabled) {
m_hoverEnabled = node->isHoverEnabled();
markDirty(AbstractRenderer::AllDirty);
diff --git a/tests/auto/render/objectpicker/tst_objectpicker.cpp b/tests/auto/render/objectpicker/tst_objectpicker.cpp
index 24fa2159d..b1898e040 100644
--- a/tests/auto/render/objectpicker/tst_objectpicker.cpp
+++ b/tests/auto/render/objectpicker/tst_objectpicker.cpp
@@ -40,6 +40,21 @@ class tst_ObjectPicker : public Qt3DCore::QBackendNodeTester
Q_OBJECT
private Q_SLOTS:
+ void checkInitialSync()
+ {
+ // GIVEN
+ TestRenderer renderer;
+ Qt3DRender::Render::ObjectPicker objectPicker;
+ Qt3DRender::QObjectPicker picker;
+
+ // WHEN
+ objectPicker.setRenderer(&renderer);
+ simulateInitializationSync(&picker, &objectPicker);
+
+ // THEN
+ QVERIFY(renderer.dirtyBits() != 0);
+ }
+
void checkPeerPropertyMirroring()
{
// GIVEN