Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What disadvantages could I have using OpenGL for GUI design in a desktop application? [closed]

There are tons of GUI libraries for C/C++, but very few of them are based on the idea that opengl is a rather multiplatform graphics library. Is there any big disadvantage on using this OpenGL for building my own minimal GUI in a portable application?

Blender is doing that, and it seems that it works well for it.

EDIT: The point of my question is not about using an external library or making my own. My main concern is about the use of libraries that use opengl as backend. Agar, CEGUI or Blender's GUI for instance.

Thanks.

like image 224
alvatar Avatar asked Apr 06 '09 14:04

alvatar


People also ask

What is OpenGL used for?

OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering.

Does Windows UI use DirectX?

Most of the UI frameworks are wrappers around OpenGL and DirectX, or atleast uses simpler frameworks like GDI+. So most of the client side developers don't directly call DirectX or OpenGL API, instead they just call UI frameworks which underneath call OpenGL or DirectX.


2 Answers

Here's an oddball one that bit a large physics experiment I worked on: because an OpenGL GUI bypasses some of the usual graphics abstraction layers, it may defeat remote viewing applications.

In the particular instance I'm thinking of we wanted to allow remote shift operations over VNC. Everything worked fine except for the one program (which we only needed about once per hour, but we really needed) that used an OpenGL interface. We had to delay until a remote version of the OpenGL interface could be prepared.

like image 198
dmckee --- ex-moderator kitten Avatar answered Sep 17 '22 15:09

dmckee --- ex-moderator kitten


You're losing the native platforms capabilities for accessibility. For example on Windows most controls provide information to screen readers or other tools supporting accessibility impaired users.

Basically unless you have a real reason to do this, you shouldn't.

like image 43
grover Avatar answered Sep 20 '22 15:09

grover