Building a complex 2D-only GUI on top of OpenGL ES

Hi all,

I have to develop a complex 2D-only GUI on an embedded system based on Freescale MX31 running linux and driving 1024x768 or 800x600 TFT LCD panel. The processor integrates a MBX R-S 3D Graphics Core (GX020) by Imagination Technologies that is Open GL ES 1.1 and 2Dvia3D compliant.
Since I never worked before with graphics accelerators, I’d like to ask the following questions:

  1. Can Open GL ES 1.1 (whose main purpose is 3D acceleration) be exploited effectively to build such a GUI?
  2. What is 2Dvia3D? Is it somehow related to Open GL ES specifications?
  3. If answer to question 1 is yes, which graphics libraries are available that support OpenGL ES acceleration?

Thanks in advance.

Probably you’ll need OpenVG, that is more oriented to the 2D than OpenGL ES.

  1. Generally, yes. But it depends on how complex your GUI really is.
  2. No, this is not an API. It just means that standard 2D operations can be accelerated by the 3D hardware.
  3. Are you referring to GUI toolkits?

To anything that lies on on top of “graphics software stack” and that makes application development much easier by hiding all low-level complexities (GTK+, Qt, GNOME, KDE, nano-x …).

Check out guichan. It’s designed for games so it is easy to use with a 3D engine.

There is a port to OpenGL but you’ll probably need to derive a few classes to port it to opengl-es. However, the library is very well designed to make that as painless as possible.

It is by no means a complete toolkit like GTK or Qt, but is very flexible and light which has advantages in the embedded world.

Ian

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.