[Interest] Qt3D performance, and development resources

Mike Krus mike.krus at kdab.com
Tue Apr 14 19:32:44 CEST 2020


Hi Charlie


> On 14 Apr 2020, at 16:51, Charles Martin <martinc at ucar.edu> wrote:
> 
> I’ve been migrating a C++ Coin/Quarter project to Qt3D.
Fun. A long time since I used Coin3d. Keep meaning to port it’s scxml based camera controller and the manipulators to qt3d.

> I’m doing this on a newer iMac/Catalina. The graphics performance seems unacceptable. A simple display of 3600 line segments takes about 5 seconds to render and 30k segments takes >30 seconds. 
Can you explain how the scene graph is structured? Is each line segment a separate entity plus its components? Or just a single entity?

If each line is an object then I would totally expect the kind of performance you are getting as each object will result is a draw call. That number of draw calls alone will kill performance. 
 
> When the rendering is started, Qt puts out this warning message:
> qt.qpa.openglcontext: Could not create NSOpenGLContext with shared context, falling back to unshared context.
That is odd. Could you explain how you are setting up your window?

> I’m new to Qt3D, and there is a good chance that I’m doing something wrong.
> 
> My questions:
> 
>  - Shouldn't I see better performance, and what can I try to improve that? Does the warning message identify the problem? 
I would say it’s either the number of objects or indeed the fact that context are not shared (resulting in lots of context switches). 

Qt3d 5.15 ships which new performance tracking features that may help you investigate. See https://www.kdab.com/debugging-profiling-qt-3d-apps/

> - Where can I find more examples, tutorials and introductory information? There are only two C++ examples on the Qt website, and both of these are very simple. The Qt docs are very limited and incomplete.
Qt 3D itself ships with a number of examples. If you look at the Qt 3D source code, there’s a number of manual tests which may be of interest. 

KDAB’s GitHub has a qt3d sample project which has other examples, though they may be a bit outdated. 

>  - Is there a community of C++ Qt3D developers? Most online material was produced by KADB, is 4 years or older, and focuses on QML. Where are the C++ users?
We are here :)

Please note that although many exemples are in qml, they are still relevant for your use case as the APIs are nearly identical. 

> I’m trying to get some traction with this product, and any guidance is really appreciated.
Feel free to get in touch if you need more help. 

Mike

> Thanks,
> Charlie
> 
> 
> 
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> https://lists.qt-project.org/listinfo/interest
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20200414/bb8be0d9/attachment.html>


More information about the Interest mailing list