[Lazarus] Fast GUI

Reimar Grabowski reimgrab at web.de
Mon Nov 30 14:44:39 CET 2015

On Mon, 30 Nov 2015 05:13:24 -0800
Aradeonas <aradeonas at operamail.com> wrote:

> But as I read about this a problem is for example in Android phones
> their support OpenGl ES and taht is diffent to OpenGL like does have
> glBegin glEnd and it can be kind of problem? It seems you have
> experience about this?What you think?
First of, everything concerning glBegin and friends is ancient stuff, don't touch them.
Don't touch glMatrix* or anything like that, too. Do it on your own (even in JS if you use WebGL).
In short: Do the matrix math on the CPU, use the most optimal vertex submission mechanism supported by the targeted version (vertex arrays, VBOs, etc.) and use shaders.
Second, every platform has its own flavor of OpenGL:
OpenGL for the Desktop, OpenGL ES on mobile and WebGL for the browser.
All are similar and yet quite different. All have their own versions and the associated problems.
Use OpenGL only if you need its features and then pick your platform and don't try to handle them all in one software.
OpenGL is not easy to handle and you really have to dive in deep to make the most of it. You can do a lot of stuff really fast but the API is very old and it shows more and more. You have very little direct control of your graphics hardware and moving data to/from the card is cumbersome.
Personally I am waiting for the successor of OpenGL (Vulkan) which does away with the multiple platform versions (Normal, Web, ES), unifies them and is stated to give you much more control of the hardware.
I am sure things are not getting much easier in the high speed graphics department but a lot more organized and hopefully better to maintain.


More information about the Lazarus mailing list