summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorTarja Sundqvist <tarja.sundqvist@qt.io>2023-06-09 17:08:30 +0300
committerTarja Sundqvist <tarja.sundqvist@qt.io>2023-06-09 17:08:30 +0300
commitc1f8fa2578d99e07f5e581f26bd532695b9534f9 (patch)
treef2564e0cde06e298b603e867766a6024f6ea943b /src/plugins
parent01aa0a9cb22ce5ed2b7ead03ed9cbeb5f978e897 (diff)
parentdc68b942aaf17338e4e74d959ab6f56b2134e1a4 (diff)
Merge remote-tracking branch 'origin/tqtc/lts-5.15.11' into tqtc/lts-5.15-opensourcev5.15.11-lts-lgpl
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/geometryloaders/default/basegeometryloader.cpp2
-rw-r--r--src/plugins/geometryloaders/gltf/gltfgeometryloader.cpp2
-rw-r--r--src/plugins/renderers/opengl/renderer/renderer.cpp2
-rw-r--r--src/plugins/renderers/opengl/renderer/renderviewbuilder.cpp20
-rw-r--r--src/plugins/renderers/rhi/renderer/renderviewbuilder.cpp12
-rw-r--r--src/plugins/renderers/rhi/renderer/renderviewbuilder_p.h2
-rw-r--r--src/plugins/sceneparsers/assimp/assimpimporter.cpp2
-rw-r--r--src/plugins/sceneparsers/gltf/gltfimporter.cpp1
8 files changed, 17 insertions, 26 deletions
diff --git a/src/plugins/geometryloaders/default/basegeometryloader.cpp b/src/plugins/geometryloaders/default/basegeometryloader.cpp
index 46e912a4e..9de2ca967 100644
--- a/src/plugins/geometryloaders/default/basegeometryloader.cpp
+++ b/src/plugins/geometryloaders/default/basegeometryloader.cpp
@@ -278,3 +278,5 @@ void BaseGeometryLoader::center(QVector<QVector3D>& points)
} // namespace Qt3DRender
QT_END_NAMESPACE
+
+#include "moc_basegeometryloader_p.cpp"
diff --git a/src/plugins/geometryloaders/gltf/gltfgeometryloader.cpp b/src/plugins/geometryloaders/gltf/gltfgeometryloader.cpp
index 2c8bb14c3..7f07ffd8c 100644
--- a/src/plugins/geometryloaders/gltf/gltfgeometryloader.cpp
+++ b/src/plugins/geometryloaders/gltf/gltfgeometryloader.cpp
@@ -624,3 +624,5 @@ uint GLTFGeometryLoader::accessorDataSizeFromJson(const QString &type)
} // namespace Qt3DRender
QT_END_NAMESPACE
+
+#include "moc_gltfgeometryloader.cpp"
diff --git a/src/plugins/renderers/opengl/renderer/renderer.cpp b/src/plugins/renderers/opengl/renderer/renderer.cpp
index 4de847bf3..4eafa2925 100644
--- a/src/plugins/renderers/opengl/renderer/renderer.cpp
+++ b/src/plugins/renderers/opengl/renderer/renderer.cpp
@@ -1952,7 +1952,7 @@ QVector<Qt3DCore::QAspectJobPtr> Renderer::renderBinJobs()
m_updatedDisableSubtreeEnablers.push_back(node->peerId());
}
- int idealThreadCount = QThreadPooler::maxThreadCount();
+ int idealThreadCount = Qt3DCore::QAspectJobManager::idealThreadCount();
const int fgBranchCount = m_frameGraphLeaves.size();
if (fgBranchCount > 1) {
diff --git a/src/plugins/renderers/opengl/renderer/renderviewbuilder.cpp b/src/plugins/renderers/opengl/renderer/renderviewbuilder.cpp
index 41aef69a0..99683a6d8 100644
--- a/src/plugins/renderers/opengl/renderer/renderviewbuilder.cpp
+++ b/src/plugins/renderers/opengl/renderer/renderviewbuilder.cpp
@@ -41,6 +41,7 @@
#include <Qt3DRender/private/qrenderaspect_p.h>
#include <QThread>
+#include <Qt3DCore/private/qaspectjobmanager_p.h>
QT_BEGIN_NAMESPACE
@@ -567,7 +568,7 @@ RenderViewBuilder::RenderViewBuilder(Render::FrameGraphNode *leafNode, int rende
// In some cases having less jobs is better (especially on fast cpus where
// splitting just adds more overhead). Ideally, we should try to set the value
// depending on the platform/CPU/nbr of cores
- m_optimalParallelJobCount = QThread::idealThreadCount();
+ m_optimalParallelJobCount = Qt3DCore::QAspectJobManager::idealThreadCount();
}
RenderViewInitializerJobPtr RenderViewBuilder::renderViewJob() const
@@ -917,22 +918,7 @@ bool RenderViewBuilder::lightCacheNeedsToBeRebuilt() const
int RenderViewBuilder::defaultJobCount()
{
- static int jobCount = 0;
- if (jobCount)
- return jobCount;
-
- const QByteArray maxThreadCount = qgetenv("QT3D_MAX_THREAD_COUNT");
- if (!maxThreadCount.isEmpty()) {
- bool conversionOK = false;
- const int maxThreadCountValue = maxThreadCount.toInt(&conversionOK);
- if (conversionOK) {
- jobCount = maxThreadCountValue;
- return jobCount;
- }
- }
-
- jobCount = QThread::idealThreadCount();
- return jobCount;
+ return Qt3DCore::QAspectJobManager::idealThreadCount();
}
int RenderViewBuilder::optimalJobCount() const
diff --git a/src/plugins/renderers/rhi/renderer/renderviewbuilder.cpp b/src/plugins/renderers/rhi/renderer/renderviewbuilder.cpp
index 387c5ff8d..870eb2cd0 100644
--- a/src/plugins/renderers/rhi/renderer/renderviewbuilder.cpp
+++ b/src/plugins/renderers/rhi/renderer/renderviewbuilder.cpp
@@ -39,19 +39,13 @@
#include "renderviewbuilder_p.h"
#include <Qt3DRender/private/qrenderaspect_p.h>
-
-#include <QThread>
+#include <Qt3DCore/private/qaspectjobmanager_p.h>
namespace Qt3DRender {
namespace Render {
namespace Rhi {
-// In some cases having less jobs is better (especially on fast cpus where
-// splitting just adds more overhead). Ideally, we should try to set the value
-// depending on the platform/CPU/nbr of cores
-const int RenderViewBuilder::m_optimalParallelJobCount = QThread::idealThreadCount();
-
namespace {
int findIdealNumberOfWorkers(int elementCount, int packetSize = 100)
@@ -498,6 +492,10 @@ RenderViewBuilder::RenderViewBuilder(Render::FrameGraphNode *leafNode, int rende
m_syncFilterEntityByLayerJob(),
m_filterProximityJob(Render::FilterProximityDistanceJobPtr::create())
{
+ // In some cases having less jobs is better (especially on fast cpus where
+ // splitting just adds more overhead). Ideally, we should try to set the value
+ // depending on the platform/CPU/nbr of cores
+ m_optimalParallelJobCount = Qt3DCore::QAspectJobManager::idealThreadCount();
}
RenderViewInitializerJobPtr RenderViewBuilder::renderViewJob() const
diff --git a/src/plugins/renderers/rhi/renderer/renderviewbuilder_p.h b/src/plugins/renderers/rhi/renderer/renderviewbuilder_p.h
index 4df57b139..974f9e9bb 100644
--- a/src/plugins/renderers/rhi/renderer/renderviewbuilder_p.h
+++ b/src/plugins/renderers/rhi/renderer/renderviewbuilder_p.h
@@ -139,7 +139,7 @@ private:
SynchronizerJobPtr m_syncMaterialGathererJob;
FilterProximityDistanceJobPtr m_filterProximityJob;
- static const int m_optimalParallelJobCount;
+ int m_optimalParallelJobCount;
};
} // Rhi
diff --git a/src/plugins/sceneparsers/assimp/assimpimporter.cpp b/src/plugins/sceneparsers/assimp/assimpimporter.cpp
index ef28c577f..694057ae5 100644
--- a/src/plugins/sceneparsers/assimp/assimpimporter.cpp
+++ b/src/plugins/sceneparsers/assimp/assimpimporter.cpp
@@ -1391,4 +1391,6 @@ AssimpImporter::SceneImporter::~SceneImporter()
QT_END_NAMESPACE
+#include "moc_assimpimporter.cpp"
+
#include "assimpimporter.moc"
diff --git a/src/plugins/sceneparsers/gltf/gltfimporter.cpp b/src/plugins/sceneparsers/gltf/gltfimporter.cpp
index 860dec3e7..bf382f099 100644
--- a/src/plugins/sceneparsers/gltf/gltfimporter.cpp
+++ b/src/plugins/sceneparsers/gltf/gltfimporter.cpp
@@ -2628,4 +2628,5 @@ bool GLTFRawTextureImage::GLTFRawTextureImageFunctor::operator ==(const QTexture
QT_END_NAMESPACE
+#include "moc_gltfimporter.cpp"
#include "gltfimporter.moc"