Search code examples
c++qt2dqtguiqtopengl

Evolution of QtOpengl


As I understand, there were no modules in early Qt versions, there were separate classes with different functions, including graphical. Opengl support was realized In qt 1.2. However, QPainter, QImage existed in early versions. So, is it correct to say that these classes are native (in other words, classes, which were primordial); opengl classes - non-native (it is a separste branch, after all)? I`d like to learn a further evolution of Qtopengl as non-native and alternative way for creating 2D graphics ih Qt, influence of this module on evolution of native methods (for creating 2D graphics).


Solution

  • So, is it correct to say that these classes are native?

    No, it is not.

    The reason for that is "native" would mean different things to different people. It is the matter of interpretation. See your other question how confused we got.

    By now, I think you mean "non-opengl" 2/3D by native. That probably means software rasterization as opposed to be going through the display driver directly. So, still on the Qt level, but without the opengl classes in Qt.

    Now, this is the point where we can come back to QImage and QPainter. Yes, QPainter is basically the initial generation for software rasterization from the times where GPUs were not so common and cheap as these days.

    They are basically doing the rendering purely with software techniques. That is, it is more limited, but it worked without more expensive and less common hardwares around.

    (Those were the times of Quake and other software products, fun times looking at it from today's perspective ...)