February 9, 2012

qtnext qtnext
Ant Farmer
122 posts

Qml Image : bad performance opengl backend

 

Hi,

I have a lot of images in qml desktop fullscreen application (opengl viewport) on Windows Seven… When one image is quite large, for example 4000×4000 pixels, the framerate drops, … when I have a lots of not very big image .. I have the same issue : I use for years opengl and I am sure that I can do the same in pure opengl with a computer 5 years old … So i don’t understand why I don’t have decent performance : I use for now QT4.7.4, I suppose I can try 4.8 but I have find this report : https://bugreports.qt-project.org/browse/QTBUG-23253

Has anyone tryed to reimplement a custom qml image using qdeclarativeitem and opengl ?

3 replies

February 10, 2012

billouparis billouparis
Ant Farmer
101 posts

Hello, I am working on a project in which I will have to dig deeper into images management performed in QML/Qt. i will try to develop an advance image caching mechanism. I may come accross several difficulties close to the one you are having now. I will try to keep you updated if I come accross any hints for you.
Bill

February 13, 2012

bms20 bms20
Lab Rat
25 posts

I think you will find that 4kx4k textures aren’t supported on all modern hardware. Therefore, you will struggle to do such large images on 5yr old hardware.

Are you on Intel graphics hardware?

Furthermore, some drivers will automatically tile your image; so you need to be careful of what you are really doing to the graphics hardware.

I would suggest that you:

  1. Try your code on a modern NVidia setup. That should do 4k textures.
  2. Try to limit the amount of texture bandwidth you are consuming.
  3. Run your application under GDebugger and start attempting to understand where the performance bottlenecks are in your software.
  4. Consider using native opengl and a QGLWidget. Then it is up to you to ensure you’re getting the correct performance.

Good luck,

-bms

February 14, 2012

qtnext qtnext
Ant Farmer
122 posts

I am not using intel graphics card : I have tested and performance are horrible with small images ! I hopes that with Qt5 it will works better…
I am using for example gtx560 nvidia card …

 
  ‹‹ using listview importing extern item      How to put a long string to ListElement? ››

You must log in to post a reply. Not a member yet? Register here!