Project

General

Profile

Actions

Emulator Issues #6156

closed

GLEW replacement code

Added by Sonicadvance1 about 11 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
GFX
% Done:

0%

Operating system:
N/A
Issue type:
Task
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
Yes
Regression start:
Fixed in:

Description

Right now we are using GLEW to get all of our OpenGL extensions. This is a expected library, but it has some downfalls that need to be worked around.

  1. No Wayland support. It doesn't support EGL so it can't support Wayland.
  2. No Android support. It doesn't support EGL or OpenGL ES.

The GLEW code is working towards OGLES support, but it'll require some sort of GLEW-ES lib instead of the full thing it seems. It still doesn't fix the Wayland support.

The fix would be to write our own extension library in the OpenGL backend to grab only the extensions we need. No need to grab any more than that.
This would have the advantage that it would use our own GLInterface files so it would support GLX and EGL so both X11 and Wayland would be supported. Also allow us to easily move in support for GLES.

The only downside is to do it correctly, we will need to move in some OpenGL headers in to the code base, mostly because of OS X because it's GL headers don't have all the extensions in it.
We would need to do the same with GLES as well.

My friend had started work on this and had gotten quite far, but I think he has given up on it. I'll get the code from him and throw it in a branch when I can.

This would be mainly for Wayland and Android(OGLES2) support.

Actions #1

Updated by degasus about 11 years ago

Why does wayland need anything other than other EGL backends? I suggest to improve glew to get EGL support and not to use glew for glx/wgl/agl/egl extensions.

Actions #2

Updated by Billiard26 about 11 years ago

  • Issue type set to Task
Actions #3

Updated by delroth over 10 years ago

What's the status on this issue?

Actions #4

Updated by Sonicadvance1 over 10 years ago

There is currently a /minimal/ bit of code in the OpenGL backend for bringing grabbing the functions to get OpenGL ES 3 to run. This code is a bit dirty and is GLES3 only at the moment. Would take a bit of work to make it work on all platforms for all the extensions we need to use.

Actions #5

Updated by degasus about 10 years ago

  • Status changed from New to Fixed
Actions

Also available in: Atom PDF