| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: I879dea61e9861e756885d5d66e00cd930fc64636
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
| |
Could not find a decent way to do a renderer/vendor string query due to
the convoluted internals so just used a define for now.
Task-number: QTBUG-67937
Change-Id: I0dcfa41377a5e430d3f7973c5aaa01535100c53c
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the non locked submission phase of the renderer, the GLTextures must have
had their content/properties already updated as this is too late to actually
create or upload texture based on references which may be invalid or outdated.
This wasn't properly handled. We now perfom the GLTexture creation and data
upload when both the RenderThread and AspectThread are locked.
Task-number: QTBUG-67989
Change-Id: I07ac23120e8d37a86e60d2b892d1437b8cb0b3dc
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The default of mirrored=true is unlikely to be the right thing to do
here.
Task-number: QTBUG-54881
Change-Id: I484927be984d69fdb75713401e0be1135831f8d1
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Tuukka Turunen <tuukka.turunen@qt.io>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
|
|
|
|
|
| |
Change-Id: I635108e43d444f227cd9d136970dfc54a9eac67a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
Accept cubic roots that are close enough to 0 or 1 that the difference
is likely a numerical error. Also add a regression test to catch one of
these corner cases.
Task-number: QTBUG-67886
Change-Id: Ia05650699638e4bb7d13fa18b31d71071909bd51
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
| |
This caused the output to be malformed and conflict with other
attribution docs.
Change-Id: Id82a5e1780d14963e0905316827b4c1d9df04057
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
A number of QML types used \qmlmodule instead of the correct
\inqmlmodule.
Change-Id: I330f664ede6d4d1a05efef8ee13ad33105ade19b
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Martin Smith <martin.smith@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The surface is a frontend object that might be destroyed before we try
to access it in jobs that query its size using
RenderSurfaceSelector::renderTargetSize(). This change makes sure we
have a valid lock on the surface before querying its size.
Co-authored-by: Paul Lemire <paul.lemire@kdab.com>
Task-number: QTBUG-67789
Change-Id: Id7eaee999ad3a7040955f7497a959a2989b99501
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
By checking the for the TextureMipMapLevel feature we can avoid loads of
qWarning messages when running on ES2. In practice these calls were just
ignored QOpenGLTexture, but this will prevent the warnings.
Change-Id: Ie61ce9ac546b48395b247e78f8fbbbed82399ede
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
| |
When using bindFrameBufferObject with ES2 the only available target is
GL_FRAMEBUFFER.
Change-Id: Ie8fd50a57deeae3e8e02885e954ff73d85712c14
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Current we require a combined DepthStencil RenderBuffer, however this is
an extension in ES2 so it's not a given that it will be available. It
is still possible to setup separate Depth and Stencil buffers for those
devices that only support that (similar to what Scenegraph does).
Change-Id: Ia112b30e229bfc553cd0cdc0f8dd8b57290c7081
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
| |
Change-Id: If89cc9d4be85ad36dfd7549e58327d8a525210e9
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
nodes\qnode.cpp(391,34): warning: lambda capture 'this' is not used [-Wunused-lambda-capture]
backend\gltfimporter.cpp(345,19): warning: unused variable 's' [-Wunused-variable]
backend\gltfimporter.cpp(353,19): warning: unused variable 't' [-Wunused-variable]
text\qdistancefieldglyphcache.cpp(79,13): warning: private field 'm_glyph' is not used [-Wunused-private-field]
Change-Id: Id546607d95561efa7547fb5d7df0b03184bc5ed7
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
Unexport class EntityCasterGatherer since it is in a
anonymous namespace, fixing:
jobs\raycastingjob.cpp(62,25): error: '(anonymous namespace)::EntityCasterGatherer' must have external linkage when declared 'dllexport'
Task-number: QTBUG-63512
Change-Id: I9e32e98077d58f98622a25543742b75f5d5d18d3
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Task-number: QTBUG-67552
Change-Id: I30fc50415f155ce990e72287a99bfca35fcf9713
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
| |
Change-Id: I18e96aa4dfe3689d27f041dbdcad43556a61c889
Reviewed-by: Liang Qi <liang.qi@qt.io>
|
|
|
|
|
|
|
| |
Fixes build with C++17 / XCode 9.3
Change-Id: Ic1c19cc4b86e54e72dd4cfe054ec6d66f64b5a07
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
| |
Task-number: QTBUG-67498
Change-Id: I4a98a81e2c5fc9fda221505b7504c3ec93e47d69
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All texture assets were made by KDAB under the CLA. The material
"sphere" mesh is from Allegorithmic and published under the
Creative Commons 4 license. See paragraph 1.2 of
https://www.allegorithmic.com/legal/substance-share
Task-number: QTBUG-61415
Change-Id: I23d61723bbac561e22e11fa57105b29148c01699
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
(cherry picked from commit 74c06c02f896c6aba408cfd0857d317378572736)
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-61415
Change-Id: I4557959c3c1068be5ef977d05a9e0443545ae919
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
(cherry picked from commit 07053f8424cbb3fffd89a9774bd5aba737d07f08)
|
|
|
|
|
|
|
|
| |
Also switch \code to \qml.
Change-Id: I3f216a3abd55fdf51295ed14715f6f1ffc5e2ea4
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The equation is a*x^3 + b*x^2 + c*x + d = 0.
Previously, we would divide by zero if a = ~0.
This change also makes sure that we return zero no roots in the case
where a = ~0 and c*c - 4*b*d < 0, and the case where a = b = c = ~0.
Finally, we return 0 or 1 if we're close enough to assume that it could
be a numerical error.
This change also adds tests for the above cases.
Change-Id: I426d2fc6175b3aff6fe099845bf63d433c158536
Co-authored-by: Christian Strømme <christian.stromme@qt.io>
Reviewed-by: Christian Stromme <christian.stromme@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the AspectEngine with a QRenderAspect (and RenderThread) is started and
stopped within the same loop, there was a race in which Renderer::shutdown
would possibly be called while Renderer::initialize wasn't complete.
Apart from testing, such starting and stopping within the same loop is
strongly discouraged as Qt3D doesn't have time to create an offscreen surface
to properly release GL resources.
Change-Id: Ie6f0a0698c213e3015bc9c51efc48d8706f20b3b
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I56be5702b898516a563cb8d2bd89bc436cc1be30
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: If014ea0445fba14a0bdb7898920a5c8b5f55fd23
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
| |
By reusing existing VAOVertexAttribute instance
Change-Id: I78554a5849f76a01e901371e4dcb363779906f86
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I0f204437f457392a8009262d0067dacf03e55a64
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: Ibdd95cb5d3c2f52e0df989cf2c699d02e5693268
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I9a334ea1cd299a65fb4dd6c4ed0a7bb6834fe95d
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I05bef741048fbb29fab261b48f48a20d1d131bcc
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I8d4362830457df149791b8c2472cb123b6222bf3
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I2db7a8dccac5d6ec808734786c8f8349f84dcfe4
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
This will allow to only deal with the AbstractRenderer class interface in the
QRenderAspect. Then in practice, the setOpenGLContext function may just be
ignored by renderers which don't care about OpenGL
Change-Id: I1adc9c203e78a31ef1054a3be36e703b4e1a6f3e
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
This will allow it to be reused by the various renderers
Change-Id: I5707496a40b91077a363734cc72af820ec5ca8c4
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
| |
Also this shouldn't be tied to the Qt3DRender aspect
Change-Id: Ia7c70094f3faa8a95c7440549a56d6f5ca517348
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
The apply method was removed from GenericState and its subclasses.
This allows to keep the GenericStates in the aspect part and let the renderer
perform the right calls based on the state class it is provided with.
Change-Id: I9c3ac04b4eb489e7443e67615e35e850c0aba07f
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
| |
So that we can reuse the RenderThread class with different
types of renderers.
Change-Id: I797b599d64f5c846b8e2ae95eba2394033a1e4b0
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
| |
This is another step toward isolating the renderer from the render aspect
Change-Id: I4031675b961d6645b65bbe05cf62d150993038b0
Task-number: QTBUG-61151
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
If the user has an mkspec that turns AVX2 on (i.e., -march=haswell or
similar option added to QMAKE_CXXFLAGS), the compiler will be using
AVX2 for normal code generation. In this case, we should enable our
AVX2-optimized code as well.
Started-by: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: I940917d6763842499b18fffd15134b004028c6ae
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
| |
This is the first step in making the QRenderAspect more modular and not
dependent on a single renderer forever.
Change-Id: I27cecdcfda382859343f1b51fbe730bb998258fb
Task-number: QTBUG-61151
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- CommandThread has been improved to not use an exec loop and properly
instantiate its own GL context + GraphicsContext that is bound to an
offscreen surface
- The dirtyShaderGathering job has been renamed and now performs the loading
of shaders and their introspection. It is also run before the
materiaparameter gathering, so that these jobs and the following can assume
a shader is ready
Change-Id: I6d99b3a104bd96530dc45f4b05d3aaac09d2d077
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
- GraphicsContext is now a stateless wrapper around GL calls
- SubmissionContext is a GraphicsContext + caches and states used to render a
frame
Change-Id: I147b56dfd4c403911faadc0e9821fff9a892f71c
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
|
|
| |
Change-Id: I89a3ee4b6d72565c1be91244c1bde39f1dd7101b
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ia04f278ef474d39aaa7c2ba516c83ed6227e660d
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Id8ef731d5f80648c19221c1d1b334bd8367188c3
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Do make it explicit which ones are still in development
also in the landing page, and add \preliminary and \since
tags (for released and TP modules, respectively).
Note that the \preliminary, \since tags currently do
not work for \qmlmodule, which hopefully gets fixed at
one point: QTBUG-65963.
Change-Id: I6648311c38f331286be37eefa60794984cd239b7
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
| |
signed/unsigned comparison
Change-Id: Ic5bb10313cdc1c108df68017146dbab876b4d706
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
| |
Change-Id: If994bef73fc10348bb0364f11a267856428907a5
Reviewed-by: Mike Krus <mike.krus@kdab.com>
|
|
|
|
|
| |
Change-Id: I8466ccd47f8bda9fec184f548a2df7807d456ac7
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|