4 ms·
If you ever run into trouble with execution of JS slowing down your Qt/QML application, you are using way too much JS. The most common performance issues in dec
by ahartmetz 10mo ago
If you ever run into trouble with execution of JS slowing down your Qt/QML application, you are using way too much JS. The most common performance issues in decently written applications are rendering of invisible items aka overdraw (especially on very weak embedded SoC GPUs) and slow startup time. There is tooling to find these and ways to fix or improve them.
- rubymamis 10mo agoHi there! > The most common performance issues in decently written applications are rendering of invisible items aka overdraw That's indeed what I found as well! Especially, these hidden items consume a lot of unnecessary RAM. What tools do you know for Qt/QML that can help with this issue?
- ahartmetz 10mo agoQSG_VISUALIZE=overdraw, and the other options described here help with rendering performance well: https://doc.qt.io/qt-6/qtquick-visualcanvas-scenegraph-renderer.html https://doc.qt.io/qt-6/qtquick-visualcanvas-scenegraph-rende... For another perspective and more details, RenderDoc (or another frame debugger if you have one) is a nice tool as well. Also don't use Rectangle { color: "transparent" }, use Item {}. An Item has geometry, but doesn't render anything. A transparent Rectangle probably also doesn't render, but it's still (at least slightly) more resource-intensive and makes you look like you don't know what you're doing. Use Loader, StackView and visible liberally to disable stuff that isn't currently relevant. If unloading causes trouble with lost state, you may be carrying too much state on the QML side.
- rubymamis 10mo agoThanks for that! Really helpful advice here.