After the wireframing and prototyping phases, you can use previewing and profiling tools to fine-tune your UI for production.
How to achieve production quality motion in UIs:
- Preview the UI to check the FPS refresh rate.
- Profile the UI code to find causes for slowness, unresponsiveness, and stuttering.
As a general rule, animators strive to allow the rendering engine to achieve a consistent 60 frames-per-second (FPS) refresh rate. 60 FPS means that there is approximately 16 milliseconds between each frame in which processing can be done, which includes the processing required to upload the draw primitives to the graphics hardware.
The frames-per-second (FPS) refresh rate of animations is displayed in the FPS field on the toolbar in the Design mode.
To improve the FPS rate, application developers should:
- Use asynchronous, event-driven programming wherever possible.
- Use worker threads to do significant processing.
- Never manually spin the event loop.
- Never spend more than a couple of milliseconds per frame within blocking functions to avoid skipped frames, which negatively affect the user experience.
For more information about previewing UIs on devices, see Validating with Target Hardware.
In general, knowing where time is spent in a UI enables you to focus on problem areas that actually exist, rather than problem areas that potentially exist.
Determining which bindings are being run the most often or which functions your application is spending the most time on enables you to decide whether you need to optimize the problem areas, or redesign some implementation details of your application so that the performance is improved. Attempting to optimize code without profiling is likely to result in very minor rather than significant performance improvements.
For more information, see Profiling QML Applications.
© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.