| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
|
|
| |
Use QMultiHash instead.
renderviewbuilder.cpp:442:56: warning: 'unite' is deprecated: Use QMultiHash for hashes storing multiple values with the same key. [-Wdeprecated-declarations]
Pick-To: 5.15
Change-Id: I99ab0f318b1c43b89888fffd160b5c89f9c3f9d4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
| |
scene3d/scene3ditem.cpp:151:7: warning: field 'm_renderAspect' will be initialized after field 'm_aspectToDelete' [-Wreorder-ctor]
Pick-To: 5.15
Change-Id: I99ab0f318b1c43b89888fffd160b5cec60153bc9
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The parentheses were in the wrong place, so this was effectively
dividing by a boolean. Thankfully, that was true (1), so the result was
also a constant true.
gltexture.cpp:710:41: warning: expression does not compute the number of elements in this array; element type is
'const GLenum' (aka 'const unsigned int'), not 'bool' [-Wsizeof-array-div]
Pick-To: 5.15
Change-Id: I99ab0f318b1c43b89888fffd160b5cb83031ceb3
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|\
| |
| |
| | |
Change-Id: Id669d5c1aab29965eac0dabd1cb497e908dac23e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Those jobs are usually the most expensive to run. It therefore makes
sense we leverage parallelism as much as possible and not discard
threads we could be using.
In that sense, the minimum amount of elements to process per job is reduced
from 100 to 10 which means that we will spawn threads if they can contain
at least 10 element to process (instead of 100 previously).
This now allows to benefit from more parallelism on smaller scenes (that have
less than 100 entities) while still scaling similarly as previously on
larger scenes.
Change-Id: I91e97fc23185d02c2727d87bb7a4ea4991f5ff14
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It will otherwise depending on your configuration result in the vulkan
feature being undefined and that will break compilation
Change-Id: I9ab5af09ffd59569253e9909b5a56cf3ed4d9b8a
Reviewed-by: Jean-Michaël Celerier <jean-michael.celerier@kdab.com>
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I764930b7a59a8e016d451964c14733a966a00ca7
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I1dc305b727b148773f1d7dafa3ba8e2b74366aec
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ic69192398efc06e418f9d768a61a55e037041611
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I54ebfa265bad8cd12681bc23ddf6e08696f620e1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I129e28130037f5640ae7982f2cd846ea7cf22ab1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I924cec511487f4d91ecd33821d8da593e730742d
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I80cee658da336566088a0b93c2953181424a4f0e
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ic9bb79e780006e49d1baa13fd15f52344b81c86b
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Id0e7d343083afcefd93f9d581917e14baa994b7f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: Iba20f047404b20c1e5b9bdcef917b3c2a1000d59
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| | |
Change-Id: I705843bbb1f6928c2e36b327469882e11fb9613e
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp
src/plugins/renderers/opengl/graphicshelpers/submissioncontext_p.h
src/plugins/renderers/opengl/renderer/renderer.cpp
src/render/backend/attachmentpack_p.h
src/render/frontend/qrenderaspect.cpp
src/render/picking/qabstractraycaster.cpp
tests/manual/manual.pro
Change-Id: I617b7e34bf7e11b2921bfc15e1b99c3e81891ec7
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-83336
Change-Id: I295036a932eba64479b4b1a7e03e676d56cae92f
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If node parent / child or entity / component changes before the backend
nodes where created, records might not be complete yet.
Task-number: QTBUG-82269
Change-Id: Id8238410331626130bb71bb1653ac5cb5d5270d4
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit e1d1a59eb04f8b17582571275073a6cfa10e9e32.
This change could lead to an explosion in job dependencies, and wasn't
necessary, since only null jobs were cleared each frame.
Change-Id: I2a4963f7edc9d3ad22531978c664fc05943b6483
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As it leads to a runtime assert based on the fact that the sorting
predicate might return true for (a, b) and (b, a)
This disables that part until it is rewritten properly.
Change-Id: I0e90d02583d402599e7a38bf0c5cca6f2460a9a8
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I0446aefe54acd42a01974873d974f57ec48fb49e
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Looks like it actually never worked.
Task-number: QTBUG-75219
Change-Id: I54e7c58be57c41461c95c48ec3e76aa45bf340a1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a Scene3D item switches screens then it will need to be
reinitalized so that the supporting contexts, offscreen surfaces are
set to use the same screen and not the original one. This ensures that
the item is still rendered correctly on the new screen.
This includes a manual test using QQuickWidget in separate windows that
enables it going from one screen to the other.
This is a fresh version after the previous version was found to have a
bug shown in the scene3d-loader test which has now been resolved.
Change-Id: I3c711e894018db52ec00a8a5d2e0fb0128743ab1
Done-with: Antti Kokko <antti.kokko@qt.io>
Fixes: QTBUG-79192
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Sometimes there seem to be null Geometry pointers that are somehow
related to quickly swapping QGeometry. This can be worked around by
skipping those null pointers.
Change-Id: Id2ffbd0eb08f205a7739825932b6d3f0afeab4af
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Restore the original GL context when handling the
QQuickWindow::beforeSynchronizing signal to prevent crashes.
Fixes: QTBUG-82152
Change-Id: Ibcf3f7fbc1d9ec7b83a76fd617d7aa77ab82ba14
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 648b7459e8a6ce8ce1f115a14da63d546b743439.
Reason for revert: Introduces QTBUG-82275
Change-Id: I5514ad58707c086eaaab3203773614c939e461e8
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This reverts commit 42c0dbc377af4d307747a32ca1c1fd267ce4337f.
Reason for revert: Introduces QTBUG-82275
Change-Id: Ibf3cc3ea29260b57734517d984ef7a5d3244216a
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
FBO need to be rebuild when one of the attachments directly or indirectly
changes. By direct change we mean one of the FBO attachment texture being
resized or the list of attachments changing. By indirect we mean when
texture resource is recreated internally by the engine.
Failure to handle this cases resulted in FBO referencing invalid
attachments.
Change-Id: I8dd4c08e464eed7fb0eeefd61a4158304ab4245f
Task-number: QTBUG-64757
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This amends 648b7459e8a6ce8ce1f115a14da63d546b743439 which had moved
the code into applyAspects() call but it was missed from the original
setAspects() call.
Change-Id: I431c07f260e6c91cbee155c052000d6e5081c4e7
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It appears we never destroyed FBOs which lead to bugs
when destroying and recreating a RenderTarget
Change-Id: I99b3df95b821670aa3bbd63209ff9bcc21afbf79
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I2542334d004ae389238cdb08dd9d41f4014efccf
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ibcc4d9bfd9d0a9d7697151915f24a6eecc149f6d
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a Scene3D item switches screens then it will need to be
reinitalized so that the supporting contexts, offscreen surfaces are
set to use the same screen and not the original one. This ensures that
the item is still rendered correctly on the new screen.
This includes a manual test using QQuickWidget in separate windows that
enables it going from one screen to the other.
Fixes: QTBUG-79192
Change-Id: Id5bbc0d30d04ea4a945463238868b68283df0543
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ifa33bb8f583c4e41e05db3bc90f0320e5decfdf2
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ieb6d2b97bd3ca126c09f7eb7241f333cd3abbffb
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Q_3DCORE_PRIVATE_EXPORT for operator* were removed by commit:
fa6799f63f3211300705b814b97716ca689d4bfa
for Vector3D_SSE and Matrix4x4_SSE.
Unfortunately they weren't removed for Matrix4x4_AVX2 which lead to
different linkage compile errors.
Change-Id: I854fb0cb4409aea1d130e935091533d4e72d6d6e
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Those are static and expensive to copy (especially once per RenderCommand)
as they contain several QStrings. Instead we sort them by nameIds when
the shader is initialized and use indices to reference them.
This avoids the copies and the sorting allows to be more efficient
at finding the ShaderUniforms based on a nameId.
Change-Id: I50008381f1d336ab182f5ac5a08500791e2871e9
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is something we might as well parallelize rather than
only doing them in the single threaded blocking rendering step.
This gives a me a 3fps gain on bigscene-cpp whose bottleneck
is still the submission currently.
Change-Id: I4d7f3bfd395eef9fef6dc18f30445cfa7d6145ee
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Similar to what was done for the rhi plugin
Change-Id: I266a3992e21faa2633036c809e884d91d4d892da
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The job count was added as a recent refactoring. It defaults to 1 and therefore
doesn't parallelize anything. Therefore make sure we override the value by the
actual amount of jobs.
Change-Id: Id2bc7ca0c10b292fa537c221ad4b90894d9b47fb
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Was caused by incorrect dependencies on the jobs.
Introduced a clearDependencies on QAspectJobPrivate to clear all
dependencies as removeDepencies(emptyVector) only removes null
dependencies.
Change-Id: I8119a9edaf841db6c5ab2a971dc5640da2192cba
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I01c9448aab2dcebab9a025b2248e491fd92fd0af
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since backend shaders might outlive their frontend counterparts
when using the OpenGL renderer (we need 1 more frame to properly
cleanup shaders), check they still exists before trying to send
changes.
Also make sure we unset the send changes flag when we cleanup
a backend shader
Change-Id: I3d9cee13fa66e346e040f3be35de223c9081267e
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Avoids wasting time adding to it given it's not used.
Change-Id: I7a3f30a7d56cb34bb60c79661aee0061c0dcb577
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The job it does takes a fair amount of time and only needs to run occasionally.
We would reset the normalized time on the backend node every frame which then
lead to a dirty set being set when synching again with the frontend. This might
not have happened every frame prior to the synching refactorings. However
currently, after every animation step, the dirty set would be reset and the job
scheduled to run again even though nothing had really changed.
This patch fixes that by setting the normalized time on the backend node prior
to the synching with the frontend. That way, when we sync with the frontend
the values are either identical when playing the animation unless the user
really has changed the normalizedTime value.
Change-Id: Iade4e7bfd47d34ef083d8e3398180a71630c0c81
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Renderer currently creates a large number of jobs, most of them
doing nothing, this quickly adds up when we have lots of branches.
To keep those down, we adjust the number based as estimate of branches
that have work to do (no draw detection will fail if it's not the
leaf node).
Also make RenderViewCommandBuilder and MaterialParameterGathererJob
only run if necessary (and reset instance counter on each frame).
Finally, only create the right number of MaterialParameterGathererJobs
for the amount of updates required.
Change-Id: I2d38c72589a38445d0110fc22a472fb9482d1a03
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- try to reuse computed results
- only set either the loop or unloop uniforms, having both at the same
time isn't possible
Change-Id: If11eef32f42f639e6da6c9b3cc693f42c2e86cad
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|