Giuseppe D’Angelo
59 results
Integrating OpenGL with Qt Quick 2 applications (part 2)
Implementing overlays and underlays with the Qt Quick 2 renderer
In the last blog post we gave a very high level introduction to the Qt Quick 2 renderer. We also showed how various signals are emitted by the renderer during the synchronization and rendering steps. In this blog post we're going to discuss those signals and show how they can be used to implement overlays […]
The last post from my colleague Marc Mutz about deprecating Q_FOREACH caused quite an uproar amongst the Qt developers who follow this blog. I personally feel that this was caused fundamentally by a perceived threat: there is a cost associated to porting away a codebase from a well-known construct (Q_FOREACH) to a new and yet-undiscovered […]
For today's blog I would like to share with you the little adventure I had when fixing a very strange bug in Qt. Pop quiz Don't think about this too much, just guess: what does this QML snippet print? There are no JavaScript semantic tricks involved; and using either == or === does not change […]
Multithreading with Qt
How to leverage the modern C++11 threading capabilities in your Qt application
This talk introduces you to the fundamentals of threading in Qt. We will discuss how threads, QObjects and events interact together; how a thread affinity of a QObject has a play in signals and slots connections; and how you can leverage the modern C++11 threading capabilities in your Qt application. Cross-platform thread support was introduced […]
This talk will introduce you to various effective strategies of drawing raw OpenGL content inside a Qt Quick 2 scene. After a brief introduction to how the Qt Quick 2 renderer works, we will see the APIs in Qt 5.6 that allow us to integrate existing OpenGL code and QML. One of the foundation pillars […]
Many KDAB engineers are part of the Qt Security Team. The purpose of this team is to get notified of security-related issues, and then decide the best course of action for the Qt project. Most of the time, this implies identifying the problem, creating and submitting a patch through the usual Qt contribution process, waiting […]
Hello! This is a small wrap-up fromQtCon, the biggest Qt event in Europe in 2016, that happened at the beginning of September. At QtCon the Qt community joined forces with the KDE, FSFE and VideoLAN communities, to create an exciting event in the spirit of open collaboration and participation amongst projects. During QtCon many KDAB […]
Hello, and welcome to the usual appointment with a new release of Qt! Qt 5.7 has just been released, and once more, KDAB has been a huge part of it (we are shown in red on the graph): In this blog post I will show some of the outstanding contributions by KDAB engineers to the […]
From time to time I scroll through Qt-related forums and mailing lists, and whenever possible I try to help fellow developers out. The other day a StackOverflow thread caught my attention: a developer was asking "What is the purpose of operator RestrictedBool in QScopedPointer?" Indeed, looking at QScopedPointer's implementation, one notices the strange RestrictedBool usage. […]
Qt 5.6 has just been released! Packed with incredible new features, 5.6 is also the first long term support release of Qt: it will be supported for the next 3 years, giving developers a solid foundation for their current and upcoming projects. Once more, KDAB is confirmed to be the largest independent contributor to Qt, […]
In the last blog post we gave a very high level introduction to the Qt Quick 2 renderer. We also showed how various signals are emitted by the renderer during the synchronization and rendering steps. In this blog post we're going to discuss those signals and show how they can be used to implement overlays […]
Holoplot UX - Example of modern user interface that could benefit from compressed textures. (KDAB designed UX, photo courtesy of Holoplot.) It’s every programmer’s worst nightmare. Your beautiful app is running at a snail’s pace, crippled by virtual memory swapping. Even worse, you’ve added one last bitmap resource, and suddenly unrelated chunks of the UX […]
The Qt World Summit was a rocking blast! More than 800 delegates, two days packed with sessions (and an additional training day presented by KDAB). Many old faces, lots of new ones, and a packed programme of sessions with terrific technical content. Yours truly also happened to give a talk, "Integrating OpenGL with Qt Quick […]
KDAB contributions to Qt 5.5
22 July 2015
Good news, everyone! Qt 5.5 has just been released! The release process of Qt 5.5 has been focused on stabilizing and improving performances. Once more KDAB is proud to be a part of the release, with its engineers constantly providing contributions and patches, as demonstrated by the commit graph of the last 16 weeks: In […]
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 […]
Contributing to Qt — hands on
11 March 2015
Abstract: With the launch of the Qt Project in 2011 it has been made possible for everyone, individual or organization, to directly submit patches to the Qt codebase. Whether it's a small fix to the documentation, an improvement to existing code, or even a brand new module altogether, the procedure is the same. The presentation […]
Continuing our blog post series about the rewrite of Qt3D. One of the biggest driving factors behind the design of Qt3D 2.0 is the ability to configure the renderer in order to accommodate custom rendering techniques. In this blog post I will explain how to render a scene in Qt3D with shadows. The complete working […]
Qt 5.4 was released just last week! The new release comes right on schedule (following the 6-months development cycle of the Qt 5 series), and brings a huge number of new features. KDAB engineers have contributed lots of code to Qt during the last few months. Once more, KDAB is the second largest contributor to […]
Qt 5.2 has just been released! Coming only five months after 5.1, the new release brings in a huge number of new features, as well as many bug fixes. For the first time ever, Qt is officially supported on two major mobile platforms: Android and iOS. KDAB contributed over 300 commits to Qt 5.2, both […]