On Sat, Nov 8, 2014 at 5:34 PM, Marian Beermann <pub...@enkore.de> wrote: > Depending on the platform requirements it might be possible to always > use OpenGL rendering in the application and back it up with a software > rasterizer (e.g. llvmpipe). > > (Just by the way: even old and crappy (perfomance-wise) GPUs like old > Intel GMAs or PowerVRs in ARM SoCs are always faster than drawing on the > CPU. I also think there are hardly any devices around that do not > support at least fixed-function OpenGL.) > > On 11/08/2014 05:28 PM, Mark Gaiser wrote: >> Hi, >> >> The requirement are simple: 2D painting needs to be possible and i >> want to toggle between raster and OpenGL. QML or _depending_ on the >> GPU is out of the question. Animations are also not required. Things >> that are required are zoomnig controls, selecting drawn objects and >> rendering has to be high performance. It must be capable of drawing a >> _lot_ of primitive objects (think about numbers between 100.000 and 1 >> million). >> >> Given those requirements i know of two different ways to accomplish >> the same result. >> >> 1. QWidget and QOpenGLWidget (new in Qt 5.4). They would both use >> QPainter. Basically the 2dpainting example [1] that is provided with >> Qt. >> >> 2. Using QGraphicsView. It defaults to raster based painting and can >> be accelerated by calling setViewport(new QOpenGLWidget) on it. This >> can be done in basically all of the GraphicsView examples [2]. >> >> Those are the options that i know of where it's possible to toggle >> between hardware and software rendering. Is this it or are there even >> more options out there in the Qt world? >> >> It's unclear to me which of the possible options is the advised way to >> go when drawing something in 2D. Therefore my question: which one >> would be the advised way to use given the requirements said earlier? >> >> [1] https://qt.gitorious.org/qt/qt/source/examples/opengl/2dpainting >> [2] https://qt.gitorious.org/qt/qt/source/examples/graphicsview
Please keep the list in. Sorry for not mentioning the target platform. That would be the Windows desktop family, x86 and x64. It's fine if it runs on Linux, but that isn't the target operating system. OpenGL on the windows desktop is a bit of a annoyance. Besides that, this application also has to work well in virtual environments where depending on OpenGL or any GPU is really not that well supported. Thus software rendering is a must have. Hardware rendering where possible. Note beforehand. I know about ANGLE and it's not an option in this case. _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest