| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
It depends on qtmultimedia which isn't avalable in Qt 6 yet
Pick-to: 6.1 dev
Change-Id: I8b525bdf0a6c78d7b4b227fa679a4e94e4883395
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
Change-Id: Id9574cf23b9af29815d8452915cebfc380fd94d1
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
operator==/!=
Pick-to: 6.0
Change-Id: I8e63400ca2b2d6d7963b8ea6f111e6e9026f1278
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
Change-Id: I797f52d7cf4f55b5991448c0498e0b149a3dd7c6
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
| |
Haven't tried to run anything, it just builds
Change-Id: I6c2c2a949bc3892a363697cf38f1608af87c303c
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Push-to: 6.0
Change-Id: I03ff6cab88d5bb0d279a61fa0a730f32b088b481
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I98febe2ae6500f2eaf44b489283f597c3c20c272
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I3fa63c558033488122c8c2ff60d4b9cd33cdbf2b
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Updates to support building with Qt6 and Qt5.15
Change-Id: I9f06d810c943a348e6a060f4ea35ed870f21694a
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I9a4075312db7c385d3ba49176dea8ca0c06061a7
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
| |
Use lambdas with local typedefs for index type
Change-Id: I2876c71d619815e7e777f936e8bb0835b8269336
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I3b074a02ff47e33472d9506c6dccab281f555e74
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
Change-Id: Iacb06149178f02811885f6fbee88713894b5a7b6
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Iba91d91d4fcd292d1e1bb388db63800893c59fc8
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
Facilitates building against Qt 5.15.
Will migrate to std::vector over time.
Change-Id: I5db14c9ea95b38e4b2d596d7397fef76f6baf118
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Pick-to: 6.0 5.15
Change-Id: I57f758f279d62ee4508914d12f99ee68cd41a2c7
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Change-Id: I2c907539e1071aa511d0a25b21bb9ed476a471c0
Pick-to: 6.0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I6007f1e152e38948b619cdeada84a86f7f4db4e4
Pick-to: 5.15 5.12
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
So that behavior is consistent with the OpenGL renderer.
Computed viewport size is QViewport::normalizedRect * current render target
size. If current render target is the window, then its size is the same as
the surface size.
Change-Id: Icd8f8e18d8959ac045538b493fef690e3dd7221c
Pick-to: 6.0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
Warning log: qshaderprogram.cpp:253: (qdoc) warning: Missing '\endcode'
Pick-to: 6.0
Change-Id: I63079eef0f277e9c6fd9a718bc40d7fecb5676e6
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I6ba2720dcda886cc91953f74054ca81ebd52b0df
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: Id80723870cd8b8a3d333c14a98e233d7e87ffab1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Work around QTBUG-89467 by re-ordering the add_subdirectory calls in
src/CMakeLists.txt.
The qmake project file looks correct. It's not entirely clear why
pro2cmake generated this particular call order. But by now it's not
worth fixing anymore. Also, the .prl file generation should not depend
on the order of add_subdirectory calls in the first place.
Fixes: QTBUG-89412
Pick-to: 6.0
Change-Id: I899608d8abe829e1b71ca9aa87734361947137f9
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature names were mistakenly changed to use underscores rather
than dashes. This breaks builds of apps using qmake as it changes
the feature detection symbols.
Fixed by reverting to use dashes in the names. This is fine in cmake
as dashes are converted to underscores when not quoted.
Unfortunately, it changes the command line configuration arguments back
to the dashed versions.
[ChangeLog] Configuration time command line arguments have changed to
use dashes rather than underscores
Change-Id: If793c5424aa0459daf06dd075e2e40c33997ca1a
Task-number: QTBUG-89386
Pick-to: 6.0
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To bind to a specific face: use glFramebufferTextureLayer and calculate
the layer as 6 * layer + face.
To bind to a specific cubemap: There is no way in OpenGL to directly
bind to an entire cubemap within the array. Instead bind to the entire
texture as for a CubeMap with AllFaces. It is up to the drawing code
to select the right cubemap and face, 6 * layer + face
Change-Id: Ib9e1a598503eeba1fa729677944aba6d799f90b2
Pick-to: 5.15 6.0
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In particular the CubeMapArray and CubeMapArrayShadow
were missing from the call to get uniform size causing
a crash when these sampler types were used.
While fixing this, I double-checked the samplers types in
uniformByteSize
uniformTypeFromGLType
buildUniformBuffer
and made sure they were consistent
Change-Id: Ief91952fd7727945ba1c4156fe053587a4060684
Pick-to: 5.15 6.0
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I3fefbe93b58c8bc695a15022204806abcc5ff127
Pick-to: 5.15 6.0
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tests were a broken too because the QT3D_DISABLE_SHADER_CACHE
environment var was still set from the previous test. These tests
passed before because the shader builder used the cache if either the
QT3D_DISABLE_SHADER_CACHE or QT3D_REBUILD_SHADER_CACHE are not set.
Change-Id: Ic04bf3bb8bb7b9b27e3dc9663fe5e96647a3bed4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit fd5c3299553818e99421f54c1b819681335de9aa)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
| |
was using \code instead of \endcode
Change-Id: I63794533a3cf2593e9a47fc0b4f97f1b65c88f3f
Pick-to: 6.0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Andreas Buhr <andreas.buhr@qt.io>
|
|
|
|
|
|
|
|
| |
Also add details about GLSL 450 code on the QShaderProgram documentation.
Change-Id: I8222984fc655ecf4d7be3d163cdd1d04988c4250
Pick-to: 6.0 6.0.0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Change-Id: Icdab60d721a0a5186fe3e8844f40e2e448eb94d5
Pick-to: 6.0 5.15
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I9def719816548d45e1235cb4f65bf0c0d6d0f405
Pick-to: 6.0 6.0.0
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Also remove duplication and make QAspectJobManager::idealThreadCount
the centralized function to retrieve expect maximum number of threads.
Pick-to: 6.0 6.0.0
Change-Id: Iec8d65d368ac7825ef87e883a987551726603adc
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a case where an existing shader was updated, VAO previously associated
with the shader wouldn't be updated properly.
To account for this, we now release all VAOs associated with a shader when
loading a shader. Additionally we also skip VAO creation of commands referencing
a shader that was loaded in the current frame. The reason for that is we know
the command for that VAO is not completed. Qt3D requires a first frame to load a
shader + perform introspection and creates valid command against shader only on
the following frame.
Pick-to: 6.0 5.15
Change-Id: I36f89fdd78e857dc5bc4af3b539d3b32630dfad6
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|