QtCS2018 Graphics Vision 2020
Jump to navigation
Jump to search
Laszlo presented the current 5.11 graphics diagram and vision diagram as discussion starting point.
Qt .511
- Qt 3D Studio 2.0 runtime is now built on Qt 3D.
- This means we have a 3D scene graph that is mainted by the runtime.
- Qt 3D is still available for use.
- On Qt Quick 2 side we have Qt Quick Scenegraph.
- One mistake we did in Qt 5 was to depend on OpenGL and exposing shader coding directly as GLSL.
- You can use OpenGL texture streaming to render from Qt 3D Studio to Qt Quick or vice versa.
- Allows embedding of 2D to 3D and 3D to 2D.
- But has limitations and not highly efficient as we run two independent rendering pipelines with synch points etc.
- These two silos should be integrated in the future.
- To get there the underlying things should be fixed.
Qt Graphics 2020
- One possible destination.
- We start with Designer Tool (one tool).
- Underneath this tooling we have an architecture that:
- Qt Quick Scenegraph
- Still has the Qt Quick and Qt Quick Scenegraph with Software renderer path
- Can have still Qt Quick and Qt Quick Scenegraph with OpenGL backend
- Remove all others (OpenVG as it's limited, D3D12 that is not quite complete even today).
- Qt 3D Studio Scenegraph
- Manages Qt 3D scene and frame graphs
- 2D scene graph merged at runtime in to the 3D scenegraph.
- Resulting in a combined scene graph with 2D branches and no texture composition (unless needed for optimisation reasons).
- Shared Parts between QQ and Q3DS
- Visual shader graph node editing for:
- QQ shader effects
- Q3DS materials
- Postprocessing FX
- This gets us to describing the logical presentation of a material or effect. Allows then having different backends for Vulcan, Metal, DX12, OpenGL ES etc.)
- Visual shader graph node editing for:
- Qt Quick Scenegraph