summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Compile RHI shaders on iOSMike Krus2021-07-191-1/+1
| | | | | | | | | | Make sure Metal shaders get generated on iOS as well as macOS. Task-number: QTBUG-95130 Change-Id: I38276405bfa58fcac1f09b9928fe5b4aa7cabe58 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit 7f1f3c358258331f86dc792c653482c82bbf2ec6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QCoreAspect: run the bounding volume job when Entity enabled changesPaul Lemire2021-07-091-1/+2
| | | | | | | | Task-number: QTBUG-93035 Change-Id: I7157783e195b274001e81662e7e3929c32fbc8a1 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit d1a6046de5718ba17cef28857dd2674de62adab3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Rerun bounding volume update jobs when entity enabled property changesPaul Lemire2021-07-091-3/+6
| | | | | | | | | | | | | Otherwise, this results in the bounding volume being out of sync with entities (an entity initially disabled that gets enabled would have an empty bounding volume) until some other events in the scene triggers a rebuild. Task-number: QTBUG-93035 Change-Id: Ia21eec0eb5601169e1789321080803a5aed12e82 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit d29f3b277d0f949f2fa0b0e0214e38ec3e790c40) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Change bounding update propagationMike Krus2021-06-216-38/+103
| | | | | | | | | | | | | | | | Previously, bounding computation results from the core aspect were propagated to the render aspect via the front end objects. This introduces a job watcher which gets called with the results and the render aspect can update it's backend data directly. The watcher process method is called in the thread of the core aspect job but the render aspect job will wait for that complete anyway (since it depends on the core aspect job). Change-Id: Ie59337f00025fd55fc723a7d105342e0b1e91d6c Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit e378ebd0db6c06af7709498122912284852e6bc9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Partially Revert "Remove custom gltf tool"Mike Krus2021-06-208-0/+938
| | | | | | | | | | In b9994cd88925ca012d66e52d033cc9a3a909fc7a, we removed the tool and the parser. This restores the parser, but the tool was unmaintained. Change-Id: I168e720b7fdf65aafebb9652933d8093f5449bdc Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit 3c02825fcedbdb0983775d0522af9c851be6c0cd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use RHI for Qt3DQuickWindowMike Krus2021-06-191-1/+1
| | | | | | | Change-Id: If9c4c17879fd99923cce096a21edb939ae5de1b9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit a6e373ccd2fcbd5133f455c878413584462138fd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update phong and metalrough shader graphsPaul Lemire2021-06-156-664/+611
| | | | | | | | | | | | - RHI requires updates to existing prototypes, explicit locations for inputs and outputs and treats samplers, uniforms and other inputs differently Change-Id: I7f8c6bf0d2a4732b8badcb7fb426f3349da3d6c3 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 9c9284ce7f0d4ea3dda6d6bc6b602f5d4d6016d4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix multi-view pickingMike Krus2021-06-144-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When using Scene3DView, qt3d still has a single scene graph and and a single framegraph. It automatically creates layers and layer filters to make sure the right objects are only rendered in the right view. This affects picking though as it was not aware of layer filters. This patch collects the filtered layers for each view and makes sure only entities matching those layers are tested for picking (this uses code that existed for ray casting). This changes the behavior of Qt3D though as non rendered objects (ie, excluded by layer filtering) are no longer pickable. Only way now would be to provide a shader that just discarded everything. Note: Scene3DView is not available in Qt6 so on this branch this only really affects custom scenes with multiple views each showing different content. [ChangeLog] Non rendered entities (due to layer filtering) are no longer pickable Ticket-number: QTBUG-94214 Change-Id: I8515368e43342b33ac219dff533e92efa72fbe7d Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit d79376732105dea749e71cdb114251084c7138a9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QChannel/QChannelComponent: Export comparison operatorsFriedemann Kleint2021-06-072-8/+8
| | | | | | | Change-Id: I44d1400da38949285f1c12c17bba3561b36f6dc9 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit ca4a251a207795b879a15f0df30f21e717183172) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Don't export QKeyFrame which is fully implemented in the headerPaul Lemire2021-06-021-1/+1
| | | | | | | | | This otherwise leads to inconsistent dll linkage warnigns on windows. Change-Id: I4f32f2fd2cc45939187535b8232172b280df7316 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 9d17891737befa4645ffd1e1a1153c314366e059) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QShaderNode: use rule with highest version numberMauro Persano2021-05-041-5/+8
| | | | | | | | | | | | Pick the supported rule with highest version number. For instance, if we're looking for a rule for OpenGL ES 3.2, and there's a rule for ES 2.0 and another one for ES 3.0, make sure the rule for ES 3 is selected. Change-Id: Ie517206948bc0422f6254472de43cda4dd2ce982 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit e5276cd4cdc6b7b2e37c14e6983eaf4ce31b5a1c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix call to drawBuffers in SubmissionContextMauro Persano2021-05-031-1/+1
| | | | | | | | | | | | Implementations of GraphicsHelperInterface::drawBuffers expect an array of zero-based attachment point indexes (GL_COLOR_ATTACHMENT0 is added to the indexes internally), so we can't convert the attachment index to an OpenGL enum before calling drawBuffers. Change-Id: Ibc8af9f7c402b055c5391ad673b815c1fb65a40a Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit 0157b93098fb5339cfe8fe99a111cf6e6f047565) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Adapt to new WrapZLIB packageAlexandru Croitor2021-04-221-3/+3
| | | | | | | Change-Id: I8d45926ebe6abadaa7f5eaa1f8cf6c34df664b9f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit e13df32309d920de813b89adcdac659f826b2aef) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix error when calling configure/qt-configure-moduleJoerg Bornemann2021-04-201-1/+3
| | | | | | | | | | | | | | | | | Commit 9a473a3c9b246f4895ae73d7060745b8b199a6c5 introduced a find_package call in a configure.cmake file, very subtly breaking top-level builds with configure or calls to qt-configure-module for qt3d. The find_package call results in errors of the cmake call that runs QtProcessConfigureArgs.cmake (see bug report for details). Guard the find_package call by checking QT_CONFIGURE_RUNNING. Fixes: QTBUG-92163 Change-Id: Ib192bbfce6fb9a1cc3b65dd7824f76db3a99aa43 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit bf5d1fe5422d3740985be2eacb35f3e971f2a39d)
* cmake: fix build with system assimpSamuli Piippo2021-04-202-25/+14
| | | | | | | | Re-generate src/core/configure.cmake and use the renamed WrapQt3DAssimp. Change-Id: Ifd4accb55216af61c0a4e29b3723eae6c9b853eb Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 598b72dac2f467fcc244e0b7ef348c034daf428b)
* CMake: Re-regenerate configure-related filesJoerg Bornemann2021-04-2010-67/+160
| | | | | | | | | | | | | Add the missing qt_cmdline.cmake files. Fix the bundled assimp library. Remove the stale configure.cmake in src/plugins/sceneparsers. Remove unused features from src/core/configure.json. Change-Id: Id2aa3a02a1c0118c97bd2a447bd23f332f4b5270 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit e4aec09c7b9c639542965207850fdc8a3d1fc841) Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix detection of VulkanMike Krus2021-04-206-23/+43
| | | | | | | | | | | | | | | | | | | | | When Qt is built to enable Vulkan support, it is given the path to the Vulkan header source. This then enables the vulkan feature. Qt3D used this feature to decide if it could use Vulkan directly or not, however, since it is now built separately, it has no idea where to find the headers, so QVulkanInstance is not properly defined. This caused an issue when using official installers of Qt since those are configured to support Vulkan. So we now do a separate config check to find Vulkan for Qt3D. When building Qt3D, you need to make sure if can find Vulkan (the same way you configure Qt itself) Task-number: QTBUG-90243 Change-Id: Ia05381597b4974d7b0914706ea2f607341dccacc Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit 9a473a3c9b246f4895ae73d7060745b8b199a6c5)
* CMake: Fix qml module version to use the repo project versionAlexandru Croitor2021-04-199-9/+9
| | | | | | | | | | | | Use PROJECT_VERSION instead of CMAKE_PROJECT_VERSION, so that the repo project version is used in a top-level build, rather than the version of the qt5 project. Task-number: QTBUG-92861 Change-Id: I94ff185cf5f37b19959e620921b9c97fde1bfc07 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit d1bd4d78d7361f5d909be3184ce8bab8c5417945) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove Audio Visualizer Example from highlighted examplesJani Heikkinen2021-04-121-1/+0
| | | | | | | | | It depends on qtmultimedia which isn't avalable in Qt 6 yet Change-Id: I8b525bdf0a6c78d7b4b227fa679a4e94e4883395 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit a790b6b5fc92afa20836ad62b5806dfcbc80230e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Transform Qt3D.Core to declarative type registrationUlf Hermann2021-04-0616-47/+234
| | | | | | | | | | | | | | | | | We already did this for the value types. As we cannot mix declarative and procedural registration, we need to do it for the object types, too. For declarative registration, the qmltypes files are generated at compile time. For procedural registration, you need to manually invoke qmlplugindump to generate them. Doing both leads to two conflicting qmltypes files for the same module. Fixes: QTBUG-92259 Change-Id: Ic3d9c63410f84e04cd368ddaee3a6ff2d9a3c997 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 59fc9cacce5eca68c9dece3c30d6f11ee7693d4e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove useless metatype declarationv6.1.0-beta3Ulf Hermann2021-04-021-2/+0
| | | | | | | | | | | The type in question has a Q_GADGET. It shouldn't need an explicit metatype and the manual metatype declaration conflicts with the automatically generated one. Change-Id: I2a2cfafcb53f4bfbf3962ba15bc18f0f2d20a118 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 9bf40d1bed80017be065c5e9e8873b11638ac34b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Remove quick3d plugins.qmltypes to unblock integrationsAlexandru Croitor2021-04-011-573/+0
| | | | | | | | | | | | | | | | | | | The build system ended up trying to copy two different versions of plugins.qmltypes, one auto-generated by 3DQuick Qt module and another that was manually generated by qmlplugindump. Since c42d558dc9ff89d452546412ee88a16ae1e324e4 landed, this uncovered the issue and made it a fatal error. To unblock integrations in Coin, temporarily remove the manually generated file to avoid the duplicate copying. This means that qmltypes support is lost for some types. Pick-to: dev Fixes: QTBUG-92254 Task-number: QTBUG-92259 Change-Id: I23587d6581421cb0339e82950b3604ba39dad748 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Restore ObjectLevelLockingPolicy on ShaderManagerPaul Lemire2021-03-221-1/+1
| | | | | | | | | | | | We are hitting a race condition otherwise. This is likely due to the fact that removing the shaders is done only once we have unloaded them from the graphics API which technically could happen in a separate thread than the scenegraph thread when running with Scene3D. Change-Id: Ic914f3b305bf807081294a90250413a5d263f124 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit a536039d102f911677e5efec03cc6f3d701aceac) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update qtquick3d-assimpJani Heikkinen2021-03-166-658/+414
| | | | | | | | | Use same version than qtquick3d is using Change-Id: Idff7881dd1ce4608915c6f3e653cf9d16f731374 Reviewed-by: Mike Krus <mike.krus@kdab.com> (cherry picked from commit 842542e01062714eae32bea7e89a5c630c6e14b4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* ObjectPicker: ensure pristine pickers are handledNicolas Guichard2021-02-261-0/+5
| | | | | | | | | | | | | | When adding a QObjectPicker component to a QEntity, the object couldn't actually be picked until one of hoverEnabled, dragEnabled or priority changed. This fixes the issue by ensuring notifyJob is called at least once, when the picker is initialized. Change-Id: I5b035cf5be6ef1da35c2d24cf76bc2daaad9bc57 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> (cherry picked from commit 1641eae01636ddb82b668c4f91d2c26f89e5bc06) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Minor fixes to compile against 5.15Paul Lemire2021-02-017-5/+30
| | | | | Change-Id: Id9574cf23b9af29815d8452915cebfc380fd94d1 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Fix MSVC warning about inconsistent DLL linkage of QAnimationClipData ↵Friedemann Kleint2021-01-291-4/+4
| | | | | | | | operator==/!= Pick-to: 6.0 Change-Id: I8e63400ca2b2d6d7963b8ea6f111e6e9026f1278 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Fix a number of MSVC int conversion warningsFriedemann Kleint2021-01-2922-56/+56
| | | | | | | | | | - Port the qHash() functions to size_t - Add some casts - Adapt some types Pick-to: 6.0 Change-Id: Ib889d46dd56c1a1c4bf6b87ae1f756c188069180 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Make Qt3DWindow handle default surface format more gracefullyMike Krus2021-01-272-10/+26
| | | | | | | | | | | | | | | | | | The default is now to use the same rules as QtQuick. If nothing is specified, will use RHI and the best surface for the platform (Metal on Mac, DX on Windows, Vulkan if available, etc). If Qt3D's OpenGL backend is requested via QT3D_RENDERER, will always use OpenGL surface. If QSG_RHI_BACKEND is set, will honour that if possible. Otherwise will use the API requested in the constructor (which defaults to using auto detection). Pick-to: 6.0 Change-Id: I8941a081940c073dfcf66711a8628e8ef6fd0915 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Fix light uniforms not properly being updatedPaul Lemire2021-01-272-1/+8
| | | | | | | | | | | | | | | | | | - We cache commands and only rebuild them when really needed. When we rebuild then, we also store the mapping between uniform location and parameter name - When reusing a command, we only update the uniform values but expect the mapping between to remain the same. - When dealing with lights however, we can end up in a case where the light type changes, and therefore so does the shader data associated. The command remains cached as nothing really requires a rebuid. Yet, this means we could have more or less parameters than the number of mappings we have stored previously if the shader data defines more or less properties. To account for this, we now rebuild the mapping when building the command or if the number of parameters in the parameter pack is different than at the previous frame. Change-Id: I9400fc7e5bcb4b97ac9da69cdf794010cf81103b Pick-to: 6.0 5.15 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Only declare staticVulkanInstance if QT_CONFIG(vulkan)Paul Lemire2021-01-271-0/+5
| | | | | | | | | Should hopefully fix compile issues on platform when vulkan isn't found. Change-Id: Ia54486dc160960e0e7000c7de832f154ecee8b0c Task-number: QTBUG-90243 Pick-to: 6.0 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Update qt/qtquick3d-assimp submoduleJani Heikkinen2021-01-181-0/+0
| | | | | | | | Fixes: QTBUG-89433 Change-Id: Iec372c94b541f871f3ed78843656c2dfa1a1f613 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io> (cherry picked from commit 5d4a3edca84eab4453165f7d90d786a2b914f58e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix parameter priorization documentationAntti Määttä2021-01-185-21/+30
| | | | | | | | Pick-to: 5.15 Fixes: QTBUG-64110 Change-Id: I09330ba29b0c120d6e7e0ae0b2bf8d4e388054e1 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Clean up use to QVector vs QListMike Krus2021-01-111-7/+7
| | | | | Change-Id: I797f52d7cf4f55b5991448c0498e0b149a3dd7c6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QtQuick API to build with 5.15Mike Krus2021-01-1116-4/+78
| | | | | | | Haven't tried to run anything, it just builds Change-Id: I6c2c2a949bc3892a363697cf38f1608af87c303c Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Remove QFrameAllocator (again)Mike Krus2021-01-1113-596/+11
| | | | | | Push-to: 6.0 Change-Id: I03ff6cab88d5bb0d279a61fa0a730f32b088b481 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Port QText2DEntity to use std::vectorMike Krus2021-01-114-35/+40
| | | | | Change-Id: I98febe2ae6500f2eaf44b489283f597c3c20c272 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Convert QExtrudedTextGeometryPrivate to use std::vectorMike Krus2021-01-111-22/+21
| | | | | Change-Id: I3fa63c558033488122c8c2ff60d4b9cd33cdbf2b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Clean up error loggingMike Krus2021-01-111-43/+49
| | | | | | | | Making it more readable and add details of failed FBO creation. Pick-to: 6.0 Change-Id: I14a65a5ed6165597acc52f38dc5d1cb908732911 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Handle changes in QMetaType APIMike Krus2021-01-087-1/+57
| | | | | | | Updates to support building with Qt6 and Qt5.15 Change-Id: I9f06d810c943a348e6a060f4ea35ed870f21694a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Use correct Y axis orientationMike Krus2021-01-081-1/+1
| | | | | | Pick-to: 6.0 Change-Id: I9a4075312db7c385d3ba49176dea8ca0c06061a7 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Update QQMLPropertyList APIMike Krus2021-01-0863-1622/+1226
| | | | | | | Use lambdas with local typedefs for index type Change-Id: I2876c71d619815e7e777f936e8bb0835b8269336 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Categorise warningsMike Krus2021-01-081-4/+4
| | | | | | Pick-to: 6.0 Change-Id: I3b074a02ff47e33472d9506c6dccab281f555e74 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Qt3DWindow::setupWindowSurface set QT3D_RENDERER env variable if unsetPaul Lemire2021-01-071-6/+16
| | | | | | | | | So that anything relying on that env variable to detect the Qt3D rendering backend gets a valid value. Pick-to: 6.0 Change-Id: I291ec03720fd6127900f43888a7e40ab382a075a Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Drop use of QVector in GLTFSkeletonLoaderMike Krus2021-01-052-24/+24
| | | | | Change-Id: Iacb06149178f02811885f6fbee88713894b5a7b6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Drop use of QVector in MovingAverageMike Krus2021-01-052-3/+4
| | | | | Change-Id: Iba91d91d4fcd292d1e1bb388db63800893c59fc8 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Enable compiling non-QML API against Qt 5.15Mike Krus2021-01-0511-8/+27
| | | | | | | | | | | | Built with QtQuick disabled. - C++17 required - minor issues with QList vs QVector - QMutexLocker templated vs not - moc forward declaration handling Change-Id: I5540625e74e2c009e528f56203e4b88be8d54599 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Restore use of QVector in private APIMike Krus2021-01-0545-198/+196
| | | | | | | | Facilitates building against Qt 5.15. Will migrate to std::vector over time. Change-Id: I5db14c9ea95b38e4b2d596d7397fef76f6baf118 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* qpicktriangleevent_p.h Add missing private API warningPaul Lemire2021-01-041-0/+11
| | | | | | Pick-to: 6.0 5.15 Change-Id: I57f758f279d62ee4508914d12f99ee68cd41a2c7 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Replace discouraged Q_MOVABLE_TYPE by Q_RELOCATABLE_TYPEAndreas Buhr2020-12-2215-25/+25
| | | | | | | | | | | | | Q_MOVABLE_TYPE was conceived before C++ had move semantics. Now, with move semantics, its name is misleading. Q_RELOCATABLE_TYPE was introduced as a synonym to Q_MOVABLE_TYPE. Usage of Q_MOVABLE_TYPE is discouraged now. This patch replaces all usages of Q_MOVABLE_TYPE by Q_RELOCATABLE_TYPE in Qt3D. As the two are synonymous, this patch should have no impact on users. Task-number: QTBUG-86829 Change-Id: Ie63323a692e8937fa72f0225b48ccb703f479c47 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>