torstai 17. joulukuuta 2009

Qt, GLWidgets, and the Hardware!

Hi guys!
Its been some time now, since my previous post. And a LOT has happened since!

Two of the most important events have been the release of Qt 4.6 and obtaining the Hardware platforms we will be using for further development.

One of the big questions has been the performance of Qt applications on a mobile device. This is something we obviously haven't tested yet, as the operating system package for flashing is only being compiled as I write, but I am hopeful that if our HW vendor can get its driver act together, we'll have a beautiful and smooth UI in the making here.

A month ago I, as the project's architect, went through a slightly stressy phase related to the graphics. You see, there are really two ways of doing the graphics: OpenGL+Qt drawing within a GLWidget, or by using the OpenGL graphics system for the entire Qt drawing. The GLWidget route has been the plan from the beginning, but some team members expressed their grave concern over the smoothness of graphics (they have since changed their minds, and accepted the architecture allows for great graphics), but in any case, I had to go thought the options.

What I did, then, was go through the options...

Using GLWidget has a strange feature, or maybe it should be called a bug: transparency does not work from GLWidget to GLWidget. The workaround is to implement draw and interaction event passing yourself, and draw into the same (top level widget's) QPainter. This allows for fast graphics, but not really the kind of programming experience that you would like.

Getting back to the team on this, we decided to stick with Qt's opengl rendering via "-graphicssystem opengl". This seemed like a great idea, especially since Qt 4.6 became final that same day!

The tension mounts, as we wait for good HW drivers for the hardware. This pretty much makes or brakes the whole system, as far as graphics are concerned.

Ei kommentteja:

Lähetä kommentti