| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I69854c833d45b39b1b0ccdb2c289162cd23d51a7
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sometimes the shader manager returns a nullptr when fetching the shader from a handle, so the return value needs to be checked before it is accessed.
Change-Id: Ia021cd8f22ceb2626a7a2734b7e346fbcc8e0301
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit bffdaabaa5cd9d7fdc64e4124817b504319708e1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\|
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: If1ce1579db02b74dde74731fcf6163614961841f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We wrongly assumed that the default FBO id would remain constant over time
once the submission context had been initialized. However it appears that
when using Qt3D with a QQuickWidget/QQuickRender control with offscreen
surfaces, the default FBO might change over time as the offscreen surface
might get recreated.
To compute the proper render target size, we rely on comparing the default FBO
id against the active FBO id being used at various times in the rendering
process.
If the default FBO has changed since initialization (due to an offscreen windows
recreation on a resize for example), we run the risk of having invalid
comparisons between the default FBO and current active FBO.
This results in possible erronous render size values when going through
SubmissionContext::renderTargetSize. This can lead to occasional flickering or
the scene not rendering (getting a reported size of 1x1) when resizing
a QQuickWidget holding a Scene3D.
Change-Id: I18371e8e19213c472bdb64a6f339ee0941e5cb3d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit 0e5099cc5afaef043058a6b3b459aa7e815ddf9c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Image units are not unpinned after executing a render/compute command and before executing the next one.
This can lead to failure during binding of textures to image units if the number of required image units of subsequent commands exceeds the overall number of image units.
Therefore, the image units are now unpinned during parameter setup of each command.
Change-Id: I9ae7be0bf8c2efe33aca836ef9e81db7c8f5b654
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit 51aa6ab005e86c6a1c5d4c91671bd8c68dde0dea)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since we cache ShaderParameterPacks over multiple frames, we need to
ensure that we check that when setting a UBO/SSBO we don't already
have an entry matching the block index.
If that's the case we should simply replace the entry rather than
append a new entry. Failing to do so results in appending a growing
number of UBO entries for the same block.
Change-Id: Ie7535a80b9426ce2fd5ab6ebe16ea71bd7447750
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit f672753556cf28d44f864457dc6338a55e2e0ed4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Adjust warning message to match GL version they are used against
- Correctly call glDrawElementsInstancedBaseVertexBaseInstance on GL 4
- Overload glDrawArraysInstancedBaseInstance to call glDrawArraysInstanced on
ES 3
Change-Id: I54e054cc636327e424e4732362dfa2d79562d958
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 7678db1b8ac5a75950b70daf60baa7b42fd826d1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The glTF specs mention that the target property on a buffer view is not
required:
https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#reference-bufferview
Therefore, since the parser would return early if no target was specified,
preventing any mesh from being loaded. This patch removes the target checking
which serves no purpose.
Change-Id: I7b1781060b79d1d102c1366dc1884a9f283a7f9f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit cffc59ff37fbce8fe987e2b4ee64b3d03b3928e9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\|
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I81f01dbde95cc9cd8e98c7fb9bf3a390aa27f379
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rather than QThread::idealThreadCount which isn't cached and could potentially
return different values over time unlike QAspectManager::idealThreadCount
which is cached and constant.
Change-Id: Icb5fa81c93aa95af7bf020739bfefdf7e298f986
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit 925dae358913d7c614223a57552837dcc6e171e7)
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-103286
Change-Id: I19c4d8e281eca3d62be902c7b0c43e5efd024bcd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit e6e2938535c121bbb605c5e8c62ecd3ca13db435)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-103286
Change-Id: Ifb6790d17259efdaaa300246c7333deed38a6e63
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit dccb5556a33da71a40de490686db681b19f1bc96)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-103286
Change-Id: I988bf4324fb5844a6c2bb8f882a54816f64631ea
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit 6d3fb7102f97136f72fe8eca63e6314bc404617f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-103286
Change-Id: I2c08611d03cc11b7d94be008cbc2205c817cf581
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit bb726e34da5126a695f43aa031a3cc5bc372d5c3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\|
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I503a36099765acfde0a14df04c8215b055121fa5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using a QQuickWidget and Qt3D, on shutdown and assert occurs.
This is the result of the QQuickWidget expecting the surface on the context
to be its own internal surface after the QQuickRenderControl has been
invalidated.
This conflict with what Qt3D does on shutdown as it makes the context current
on its own internal offscreen surface on shutdown.
Therefore, to fix this issue, we record the surface in use before Qt3D shuts
down and we make the context current on it after Qt3D has shutdown.
Arguably, the fix should really go in QQuickWidgetPrivate::invalidateRenderControl
where the QQuickWidget should check that the current surface is indeed the one
it expects and set it accordingly.
Change-Id: I534dc330a30a2ad5d17a6416715d03206ef4b1c9
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 559d77cacf7a3f6a29d3debec6d61a2ef8a59dc9)
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When changing a Parameter whose value is a texture, it takes Qt3D potentially
two frames to process the scene fully before it is able to draw the updated
content.
This patch makes it so that if we know we have the flags ParametersDirty for
frame N, we request to reprocess the scene once more on frame N+1.
Change-Id: Ia635e324434f92f8423a68b72d99350d96830de6
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit 672da697b147f039effbfd352b20f3f1891f31c6)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|\|
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I78ddafff7a563a17c7e9ce31249faf05dc6cda69
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit e09188f773ab287dd8c4569a1996d89113bfd5d7)
|
|\|
| |
| |
| |
| |
| | |
tqtc/lts-5.15-opensource
Change-Id: I944b4bd889244483ec8d8cc7bafe1fb27b5d00db
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
|/
|
|
|
|
|
|
|
|
|
| |
This reverts commit 03e5f60e585701608c1181365faee484d7a1f14c.
Revert of commercial license headers is required for
Qt 5.15.3 opensource release.
Task-number: QTBUG-91108
Change-Id: I359e89ed77b1b2750607617d138ebb6c316f0296
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit a7f627b29b2792154bc2a45f31bd32b74fd508b4)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Updated header.COMM to the files in tqtc-qt3d. Examples,
documentation files or tests are not updated.
The commercial license header may contain some
additional lines so that its line count equals
with the earlier license header. Reason for this
is that some autotests use hard coded line numbers
and a change in the line count causes failures in
tests.
Task-number: QTQAINFRA-4155
Change-Id: I139c8ad72c042b0900239decc36cfed4bc1c4951
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
|
|
|
|
|
|
|
| |
Change-Id: I6007f1e152e38948b619cdeada84a86f7f4db4e4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit 492c976b05256b29aac0df861c4be77e1eb65906)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Gcc 4 version check can also be dropped since it is not supported
anymore.
Fixes: QTBUG-88821
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit c6716fa7f044985389038802a296bae83951b119)
Change-Id: Ice522afc92823156e9545e8e75b16c2c0a614d6f
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit 94ab90f93dc5338338f30e6d78854b55353d3cb8)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
Change-Id: I36f89fdd78e857dc5bc4af3b539d3b32630dfad6
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 7f1bcdb799ad689fc138f976eed7e12f1ce64386)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- We need to perform frustum culling even if camera hasn't moved as entities
in the scene could still be moving
- We shouldn't return early if there's nothing to draw/or filter. Given we
keep 2 sets of render command buffers we flip between every frame, we still
need to update the command indices on bufferA, so that bufferB get initialized
with values from bufferA at the end of the frame ...
Otherwise in the case where at frame N (bufA) we have a visible object and at
frame N+1 (bufB), that object is culled object. If we return early, bufB would
never gets updated to contain 0 command indices. We would then end up
flickering between visible and non visible object.
Change-Id: I248c54b89a3795fa69c23ea952424c68696313e1
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit b76e9b0eccdd49a539e213a91bcaecbd98efbd74)
|
|
|
|
|
|
|
|
| |
Lets user override the sorting order of entities.
Change-Id: Iab7fd0d705f7ddcb424a59f86f8c2c28059813d1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
(cherry picked from commit c6aec09f4f6030fa11b9ba911e4c0df2fe7485b2)
|
|
|
|
|
|
|
|
|
|
| |
The GLTexture class wasn't registered for cleanup on the manager.
This could result in it being reuse while not being reinitialized resulting
in incorrect rendering.
Change-Id: I85e6a5c3b5ca9d3cfa5ac5bcb1db3695dabfa576
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit dbf5da312ae3f406cc45a80c6ab2464b6e2d1e14)
|
|
|
|
|
|
|
|
|
|
| |
This allows to upload full sized compressed textures which was not
working before if using the TextureDataUpdate API
Change-Id: Ic87e99e60e56d5a10550ca8efdc4f75a7ae1f0b1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit c7c84944d7111b837544e22fe5a0a4fe2a150aeb)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is after all valid in some cases to not have a CameraSelector
(simply clearing the screen, blitting, rendering directly in normalized
coordiates ...). While the warning might be useful for beginners, it
results in the console being flooded with warnings when one of the
above listed valid cases is performed.
Change-Id: Id26625f35519f7afd405384289db5c4a11b95465
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit fea70a042dd22f8f7762caab50716f52db4badd3)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: I72185e825d20aad7c05e4870074831efa199972d
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit dc430c9439ec18fd554c039464ea79db87d0fe44)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Icac2b16cfdb3ea98f1b85df397d83a8493bb60ad
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
So that it actually gets disabled whwn specifying -no-assimp.
Change-Id: I23c166ef977103f2893c8df721a29d8d147badde
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 3166eed9ec9883cb0df5ecc4fbeae68760bb5a58)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This amends 2e3607aa120324f60832ca1cd42aaeaf22cc148d which made it
always use surfaceSize. But if m_surfaceSize->size() is valid then this
should be used as it will account for HighDPI setups.
Fixes: QTBUG-86721
Change-Id: I634b6c3257ac2dcf8042acbbeb999960f68bb266
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 010d2456d8bc02d1c8ce8e0f16f0ecd59ac08803)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
| |
Change-Id: Ifffbfd80a3d99b43e348e12bea62e3c90eed80c4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Otherwise we release the context that is owned by the QtQuick rendering
engine which leads to assert failures and crashes in the single threaded
case.
Change-Id: I5f5e03bbe43a0990a29d41b2fc96e714668d85fc
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit 2e627f8ce77e5c184742234416da88e6393fd2c1)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Since those uniforms are injected by Qt3D, them not being used by a shader
is valid and shouldn't result in the function return false. This could
otherwise prevent valid draw calls from being made
Change-Id: I562cc40d758a174bf9d315a9ab0919ae55a0b04f
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit f9920b285767bceb7b771df000742c277ac9da91)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Rework Scene3DRenderer/Scene3DItem to remove coupling and help
simplify the flow
- Introduce a Scene3DManagerNode to manager lifetime of the
Scene3DRenderer. Rely on the Scene3DManagerNode dtor to know
to shutdown the Qt3D renderer in the proper thread.
- Try to handle the fact that destruction order between Item and SGNode
is random by using an AspectEngineDestroyer helper
- Stop using a sharedptr to store the QEntity on the Scene3DItem side.
This can lead to crashes as the AspectEngine assumes it is the sole
owner of the Entity ptr.
Change-Id: I14915705eb9ab1195b2b783cbbb45076acc2ac1a
Task-number: QTBUG-84847
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
- Reverse dependency order so that graph shows jobs from first to last
instead of last to first
- Add instance id to RenderViewBuilder jobs, otherwise it all appears
as if there's a single instance of a given job when in reality there
is one per RenderView
Change-Id: Id47764151f0321c794068e71e21a25e921d04589
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add alias envLightIrradiance for envLight.irradiance and envLightSpecular
for envLight.specular. Uniform struct can contain samplers but UBOs cannot
contain samplers. Depending on the target platform, having standalone
uniform names to access the env light specular and irradiance maps are
therefore required.
Change-Id: I006bb45865175396a8b0c2bf9ed7e9cee94abf60
Reviewed-by: Jean-Michaël Celerier <jean-michael.celerier@kdab.com>
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit ad815df128fab21c64edd2cc963f7c9fbc9091ff)
|
|
|
|
|
|
|
|
|
| |
It seems Qt6 QHash implementation might rehash on lookups which leads
to data races in case of concurrent lookups
Change-Id: I9fff2c8303fdd5908acc27d6d98fc963876d65cc
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 308fd2598eab048de45df274c408fb2d43fb3bcf)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QRegularExpression::match takes a QString and not a QByteArray, so
QRegularExpressionMatch::capturedStart is not reliable to locate bytes
in a QByteArray which might contain Unicode data.
This fixes the issue by explicitly working on QStrings.
Change-Id: Ia32ee169718d98e7197d7bfa19ca23e6e243dc25
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit 13067bf7313e2e0e9c16e952bc97dd8854695967)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
ES2 supports multisampling, it just doesn't support explicitly disabling
multisample like we could do on desktop with glDisable(GL_MULTISAMPLE);
Change-Id: I4a070e8fec60b038e141a656ddb359f0dbed441d
Reviewed-by: Jean-Michaël Celerier <jean-michael.celerier@kdab.com>
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit c3fa82cdcfdddf16efba7cebd0fecd4630a3c20e)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
| |
We assumed we would only have 15 color attachments at most. In cases you
have more or less, if request Depth or Stencil binding points, we would
have used an invalid value.
Change-Id: I2ecfefbff043fc80efff4b5ad777f3d365f424c2
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 8a9c37b3e7d57e1275706be035f588ddd27f8c53)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
| |
Change-Id: Iacb32f9ea0047eedf87e53ebdeaeecada0f7cd48
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 100eed75b4eaee031d8144b8ff1ce84361cde99c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
m_glContext is left not initialized by the code (which had a
merge resolution marker in the middle), and there's a connect()
statement against it. This makes me think this code should
initialize it, instead of just initializing ctx.
Change-Id: Ia1cbd5630cc6aa7b047457a9c895d94f164f9204
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit df32ce178a23f0b1e3919208dd5d786a2be9b966)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
| |
Leads to a massive gain on bigscene-cpp (increase of 10 fps,
frame preparation time reduced by 2ms)
Change-Id: Ie2d1f0816fef8c28f316bb9cc8c7daf417c7f8fd
Reviewed-by: Mike Krus <mike.krus@kdab.com>
(cherry picked from commit 735fe47dab436727dc5ab6d66ba7feb7a868f4c3)
|