Skip to content

Joint meetup with Khronos Oslo Chapter: Qt graphics stack

Photo of Laszlo Agocs
Hosted By
Laszlo A. and Andy N.
Joint meetup with Khronos Oslo Chapter: Qt graphics stack

Details

This meetup is listed both here on Oslo Qt Users and on Khronos Oslo Chapter. Please RSVP on only one of these to avoid double counting.

Qt - http://qt.io - is an application and user interface framework for C++/QML/JavaScript targeting a wide variety of platforms from desktop to embedded. Development started at Trolltech in Oslo with a desktop focus, providing the foundations among others for the KDE desktop environment. The scope soon got extended to other platforms as well as handheld devices. After the acqusition by Nokia in 2008 the focus shifted towards mobile platforms, and the first experiments at utilizing graphics acceleration at the core of the GUI framework started, first with OpenVG, then OpenGL ES 2.0.

In 2012 the Qt business got acquired by Digia which led to extending the focus to the leading mobile platforms, and, more importantly, an increased push for creating enablers that allow customers and users all over the world create embedded systems and appliances that feature efficient and fluid user interfaces powered by GPUs and APIs like OpenGL.

Even though OpenGL and windowing system interface APIs like EGL, GLX and WGL are (relatively) well-defined, setting up rendering properly for the windowing system, framebuffer (fbdev, or DRM/KMS with GBM or EGLStream) or vendor-specific display compositor on a specific target hardware and software stack is not always obvious. One of the key benefits of Qt on embedded is the wide support of such vendor and driver specific glues.

Today Qt is developed by The Qt Company, now independent from Digia. The key technology in Qt 5 is QML and Qt Quick. QML is a declarative language that allows user interfaces to be described in terms of their visual components and how they interact and relate with one another. Qt Quick provides the UI primitives, animations, effects, and the core rendering system based on a 2.5D scene graph targeting OpenGL ES 2.0 (with some optional paths for modern OpenGL versions).

OpenGL is not the end however. Currently there is work on-going to further modularize Qt Quick and lay the foundations for supporting other graphics APIs, like Vulkan and Direct 3D. At the same time Qt's long-going research regarding Wayland support, both as in Qt applications running as Wayland clients, as well as using Qt to create customized Wayland compositors in a rapid manner, are starting to bear fruit. We think it is now therefore a good time to take a look at the Qt graphics stack and see how the pieces fit together.

There may be pizza at 17:45. This is subject to budgetary restrictions and depends on the number of attendees, and so it is currently tentative. We will see.

Photo of Oslo Qt Users group
Oslo Qt Users
See more events
Teknologihuset
Pilestredet 56 · Oslo