JF002
Posts: 94
Joined: Sat Feb 04, 2012 8:49 am
Contact: Website

GUI and GPU acceleration, what's missing

Sun Jan 13, 2013 3:47 pm

Hello!

I'm searching for information and understanding for many weeks, with no luck...

In theory, the GPU or the raspberrypi is very powerful. In practice, it seems there is no support for the GPU in softwares and libraries, appart from OMXPlayer and Quake, for example.

I have little knowledge in 3D software, OpenGL, OpenGL ES, OpenVG, OpenMax,... and in graphical programming.

In fact, I'm searching for a framework that would allow me to build GUI application adapted to mobile/touchscreens.

I tried QT5, but it is a monster to build and deploy, and I didn't manage to do it.
I tried Kivy, it is lighter, smaller, but it complains about GLX things.

So, I'm wondering... Is GPU accelerated GUI possible with the Pi?
If yes, how?
If no, what's missing? Hardware specifications, drivers, specific implementation and adaptation of the libraries for the PI?

Once I understand what's missing and what's should be done, I could see if I can do anything!

Thanks a lot for your answers!
My web site : https://codingfield.com

User avatar
PeterO
Posts: 5138
Joined: Sun Jul 22, 2012 4:14 pm

Re: GUI and GPU acceleration, what's missing

Mon Jan 14, 2013 12:51 pm

It may not be a traditional "GUI" but the GPU on the PI is quite capable of playing a part in creating displays for controlling applications.
http://www.youtube.com/watch?v=3zezUiJ8NI8
PeterO
Discoverer of the PI2 XENON DEATH FLASH!
Interests: C,Python,PIC,Electronics,Ham Radio (G0DZB),1960s British Computers.
"The primary requirement (as we've always seen in your examples) is that the code is readable. " Dougie Lawson

-rst-
Posts: 1316
Joined: Thu Nov 01, 2012 12:12 pm
Location: Dublin, Ireland

Re: GUI and GPU acceleration, what's missing

Mon Jan 14, 2013 1:32 pm

JF002 wrote:If no, what's missing? Hardware specifications, drivers, specific implementation and adaptation of the libraries for the PI?
All of that is available to a certain degree - what is missing is 'Adaptation of the GUI frameworks to use the libraries available on the RPi'

There is already ongoing work for accelerated X window system (search for 'Simon accelerated X'), but this is not likely to be of use to you as you say:
JF002 wrote:In fact, I'm searching for a framework that would allow me to build GUI application adapted to mobile/touchscreens.
There is also work done on Wayland, which possibly might adapt better to your needs... Or maybe you could consider Qt4?

You could do your own UI using the available libraries like PeterO has done - maybe look at OpenVG if just 2D required?

Then there is the option of trying to get Kivy ported/fixed to work on RPi...
http://raspberrycompote.blogspot.com/ - Low-level graphics and 'Coding Gold Dust'

User avatar
ajstarks
Posts: 129
Joined: Fri Jun 22, 2012 2:14 am

Re: GUI and GPU acceleration, what's missing

Sat Jan 26, 2013 2:40 pm

Not a GUI toolkit, but here's a high-level graphics library built on OpenVG:

https://github.com/ajstarks/openvg
http://mindchunk.blogspot.com/2012/09/o ... ry-pi.html

incans
Posts: 2
Joined: Sun Jan 27, 2013 3:30 pm

Re: GUI and GPU acceleration, what's missing

Sun Jan 27, 2013 5:00 pm

Yes, this is one of the main challenges facing those of us who might want to do some graphics software development on the Pi, but aren't hardcore software developers with experience in C or C++ and OpenGL / OpenGL ES.

What the "rest of us" need is one or more software stacks that are-
  • Hardware accelerated
  • Easy to install (basically "apt-get" and go)
  • Cover all the key bases of drawing/rendering, GUI building, user input etc. (maybe even audio and video...)
  • With a binding to one or more easy-to-get-started languages like Python, maybe Go
It's a hairy, complex job and we have to wait for the people who ARE hardcore experts to make progress.

Accelerated X is being worked on, but from what I've read of Simon's progress it seems that X is never going to be an ideal solution for the Pi. In some ways that might be a good thing, because it makes Wayland a more appealing proposition. An efficient high level library running hardware-accelerated on a nice slim Wayland-based window manager ought to really make the Pi fly!

I'm very optimistic that in the future we'll have access to options that hit an increasing number of the above bullet points, although I share your frustration that it's not here yet.

To be fair, the Pi could never have been released at the time, and at the cost it was if they'd had to go and spend 2 years with a 5 man team writing a top to bottom graphics stack. The machine was released as a platform to build on, and us "brickies" have to wait for the specialists to get the foundations in.

Regards-

-rst-
Posts: 1316
Joined: Thu Nov 01, 2012 12:12 pm
Location: Dublin, Ireland

Re: GUI and GPU acceleration, what's missing

Mon Jan 28, 2013 11:50 am

Same topic discussed here http://www.raspberrypi.org/phpBB3/viewt ... =68&t=8653

Based on that:
- there's work being done on the Kivy (Python support)
- Qt5 is available pre-built
http://raspberrycompote.blogspot.com/ - Low-level graphics and 'Coding Gold Dust'

Return to “Graphics programming”