| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Fixes: QTBUG-78577
Change-Id: I280ffeda4bba1a9c170feb1ffa4b6c95eb0e6d28
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
| |
Task-Id: QTBUG-84623
Change-Id: I786a7a8ee256d8c395dd0e828213c5d137ba20dc
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Force OpenGL, remove the ShaderEffect (it serves no purpose in this
example) and remove deprecated API usage.
Finally, rename the example to opengltextureinthread.
Note that the example's performance is sub-par, but the same is true
with direct OpenGL.
Change-Id: I7eaa2349ffdb3d27bd9e8815d674e918bc709c03
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
And port the graph example to QSGMaterial and the RHI. We will not anymore add a
direct OpenGL path (that would mean using QSGMaterialShader) for the example because
the upcoming purge renders that useless anyway.
Task-number: QTBUG-82988
Change-Id: I137575ed5df45b6bfc34a11d73dc5100945081c5
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QSGEngine goes away. Same for the associated example, which is the only
place this is used anywhere in Qt.
As a consequence, the renderer base class can be moved back to private:
there is no use for it to be public anymore, since that made sense only
in combination with QSGEngine. With the RHI-based rendering path driving
a renderer directly is more complicated than before so it is not
reasonable to allow the QSGEngine-style access anymore.
Instead, one has QQuickRenderControl, which allows redirecting and
manually driving the rendering of a QQuickWindow, thus providing an
alternative to the legacy QSGEngine approach.
Task-number: QTBUG-78596
Change-Id: If57c6b657b2053da1c4e545e517026382a71d998
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This is essentially the rendering code from vulkanunderqml put
into the structure of metaltextureimport with some added memory
barriers.
Task-number: QTBUG-80500
Change-Id: If38301c039b38e3798ff482625daa5f63e8d6fb2
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
|
|
|
|
|
|
|
| |
Also enable the two Metal-specific scenegraph examples on iOS.
Change-Id: I0e1e6d527544ea4a5bfb0d08ca2d32c762d3c699
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It shows QQuickFramebufferObject. "Texture in QSGNode" is ambiguous
as it suggests another type of use case (where an existing texture is
imported and used with the QQ scene - without rendering to it). This
would conflict with upcoming future examples, so rename to fboitem, which
is what this example is about.
The link from examples.qdoc is already using the fitting title so that will
just work.
Change-Id: Ide7a563398a4b464c55f14e10fa9386432b3d06d
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
| |
Change-Id: I499c21083faf6096a0dc3b8ee5682dd5cbcd3ce7
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
| |
Change-Id: I61e8b50f560d1f4c68731fb19eb13071992040c9
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Opt in via environment variables:
QSG_RHI=1 -> enable using QRhi instead of GL
QSG_RHI_BACKEND -> set to vulkan, metal, d3d11, gl to override the default
(the default is d3d11 on Windows, metal on Mac, gl elsewhere)
Or force a given rhi backend via the existing
QQuickWindow::setSceneGraphBackend().
Otherwise the default behavior is the same as before, the rhi code path
is never active by default.
-no-opengl builds are supported in the sense that they work and default
to the software backend. However, the rhi code path cannot currently be
used in such builds, even though QRhi from qtbase is fully functional
with Vulkan, D3D, or Metal even when qtbase was configured with
-no-opengl. This cannot be utilized by Quick atm due to OpenGL usage
being all over the place in the sources corresponding to the default
backend, and those host the rhi code path as well. This will be cleaned up
hopefully in Qt 6, with the removal all direct OpenGL usage.
Other env.vars.:
QSG_RHI_DEBUG_LAYER=1 -> enable D3D debug or Vulkan validation layer
(assuming the system is set up for this)
QSG_RHI_SHADEREFFECT_DEBUG=1 -> print stuff from ShaderEffect
QSG_SAMPLES=1,2,4,... -> MSAA sample count (but QSurfaceFormat works too)
QT_D3D_ADAPTER_INDEX=0,1,... -> D3D adapter index
QT_VK_PHYSICAL_DEVICE_INDEX=0,1,... -> Vulkan physical device index
QSG_RHI_UINT32_INDEX=1 -> always use uint index data (both
merged/unmerged, convert when needed - with some rhi backends this is
implicit)
QSG_RENDER_LOOP -> to override the render loop as usual. The default
with RHI is threaded for Metal, threaded for Vulkan on Windows, basic
for Vulkan on Linux and Android (to be checked later), while the existing
rules apply for OpenGL.
Not supported when running with QRhi:
- particles
- compressed atlases (though this is transparent to the apps)
- QSGRenderNode
- QQuickRenderControl
- QQuickFramebufferObject
- certain QQuickWindow functionality that depends directly on OpenGL
- anisotropic filtering for textures
- native text may lack some gamma correction
- QSGEngine applicability unclear
- some QML profiler logs may be incorrect or irrelevant
Change-Id: I7822e99ad79e342e4166275da6e9e66498d76521
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Fixes build warnings:
Cannot add commands to previously defined target sub-textureinsgnode-qmake_all.
Cannot add commands to previously defined target sub-textureinsgnode.
Cannot add commands to previously defined target sub-textureinsgnode-make_first.
Change-Id: Ieaa8b688fa112d42efa05721ff3bfe251036a69b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Most of the changes are optional, but cleanup our QT_CONFIG
usage.
Change-Id: I5253d53f72f6fb03c2cfedae1e17d94f424a6bbb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\
| |
| |
| | |
Change-Id: If91e0e28d004f1db978dcab393f189743bb69cd5
|
| |
| |
| |
| |
| | |
Change-Id: I297e302b4672bcd05543b88d7da9318ae81a00b4
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
| |
| |
| |
| |
| | |
Change-Id: Ie6a219392a48fd6b1a32037cc215dc20d408e819
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Suitable for -no-opengl too. It may not work at runtime if D3D is not
available either but build-wise it should be ok.
Change-Id: Icbcd736908707719cecd1bf006fb5e1904504160
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|/
|
|
|
| |
Change-Id: Ice6c47f766899e7313b9dde8cfcd6d81eeaf52f5
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
|
|
|
|
|
|
| |
And how to use use two textures in the same material.
Change-Id: Idcc618ed359422c2a104eeed105b7c4f5086ee4e
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
|
|
|
|
|
|
|
|
| |
This change wraps QSGRenderContext and QSGContext in a new QSGEngine
class, and expose a public interface of QSGRenderer through a
QSGAbstractRenderer to make it usable on a standalone window or FBO.
Change-Id: I2d41187472424f5ea64650a006bcd61f2711f6b9
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
|
|
|
|
|
| |
Change-Id: I7a829f201c9d1514b2462e7f3bd11761d02cb66c
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
I also cleaned up the naming of the other scene graph examples a bit,
so that they sort together in the samples list and have a more obvious
naming scheme.
Task-number: QTBUG-29548
Change-Id: I455eacb02c06058a6d49e12e4f1813ec80b655f6
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
|
|
|
|
|
|
|
|
| |
follow respective change in qtbase
Change-Id: I27502eb7ebea973e19ec5f7c3ec0e2338556f6e0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Enable examples to be built in the target tree. This entails installing
the project files and possibly other missing stuff.
Task-number: QTBUG-27977
Change-Id: I159fd8e3ebc7077e1d68e085c4947acc058ce594
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
|
|
How to make a custom QSGGeometry, how to use QSGSimpleMaterial and how
to use render with raw GL.
Change-Id: I3e5a32b6ae12d7d781c11050ed26a54845e92cca
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
|