James Turner
13 results
In the final part of our series on 3D in Qt 6, we review the tooling around 3D, and how the different approaches available suit different business and technical needs. We look at what content creators typically deliver to us as developers, what operations and actions we might do with that, and how iterative development and revisions to content impacts us a developer.
In this video, we review the evolution of APIs to access graphics hardware, and the evolution of Qt rendering in parallel. Then we look at the abstractions and features created by Qt to take advantage of modern graphics hardware while remaining portable to a wide range of platforms. Finally, we look at what this means for integrating our own or third-party renderers into Qt 6.
In this video, we discuss the 3D solutions which ship directly with Qt6, and the different features and trade-offs of each one. We look at the key rendering styles and kinds of 3D content supported by Qt Quick 3D, and the ways of integrating the content with existing 2D scenes.
This video explores some of the choices around the changing options for 3D content in Qt 6. We'll work our way through the why, what and how of bringing 3D content in your existing Qt application.
Your Qt / C++ application is feature complete, you fixed all the bugs, and your unit-tests pass! Time to ship it and get on with your life. Unfortunately, then you start to get reports that it crashes for some people, sometimes, on some machines. But they can’t remember what they were doing. Or know what version they were running. Or whether they’re running macOS or Windows.
A long time ago, I wrote a post about creating custom shapes in Qt Quick, via the scene-graph APIs. That post covered defining suitable geometry to draw a part of a circle, known also as a 'sector', efficiently, since such sectors occur commonly in instrument and vehicle interfaces. I started writing the second part, about […]
My file menu is not full of eels
Or, why do my menus behave oddly on macOS when translated?
22 July 2020
This is the story of a bug in an open-source project I maintain; as the maintainer I review and sometimes fix bug reports from the community. Last week, a user reported that the 'File' menu of the application was not appearing on macOS. Some investigation showed this didn't happen when using the default translation (i.e […]
QtQuick includes basic visual item to construct many common user-interface components, but people often ask how to create different visual appearances, beyond rectangles, round-rectangles and images. There’s various solutions to this problem, and with Qt 5.10, there’s the new Shapes module which makes it easy to define paths, ellipses and other standard SVG drawing elements. […]
The multimedia layer in Qt contains various possibilities for including streaming video in your QtQuick applications - most commonly there's the Video element, which you include in your QML interface, specifying the source URL, playback options and so on. Unfortunately, on iOS you'll discover a limitation: the backend for QtMultimedia only supports window-level integration. In […]
Introduces the basic Qt 3D APIs and then shows more detailed examples of the components.
Introducing Qt3D 2.0
14 March 2015
JamesTurner and Giuseppe D’Angelo introducing Qt3D 2.0 Abstract: Qt3D 1.0 was created during the Qt4 life-cycle, and has been deprecated since the release of Qt5. Additionally, the API design featured some limitations which restricted the potential use-cases; injecting large amounts of dynamic data into the scene, configuring advanced multi-pass / deferred renderers, and using multiple […]
Integrating QtQuick 2 with 3D renderers
9 March 2015
Abstract: “QtQuick in Qt5 uses OpenGL to deliver fluid, performant visuals, and an internal scene-graph structure to permit threaded rendering, decoupling the main application thread from interacting directly with the graphics driver. For developers work with an existing rendering or visualisation technology, this presents both an opportunity but also problems; QtQuick offers a compelling, modern […]
Several previous posts have introduced our SlideViewer tool which we created for use in the various trainings we deliver. The tool started out as an experiment, created using basic QtQuick 2 Items. Startup configuration was specified by command line arguments, and a simple Keys.onPressed function provided most of the runtime control: both navigating around the […]


