Porting glSDL to be a backend video driver

Hello.
I am sorry if this is a redundant re-send, but I am pretty sure my
previous send got stuck at the list moderation (wrong from address).

I have begun work on “porting” the ancient glSDL to be a "modern"
backend video driver.
I was wondering about several things:

A. Is this work redundant? Is someone else already working on this?

B. Is this undesirable? #sdl users seem to be very much against the
idea, even though I know that a lot of my SDL/pygame code can benefit
greatly from OpenGL rendering (and can easily hold all surfaces in
texture memory) without having to convert a lot of code to use the
much less convenient GL blitting directives. Also, when GL is not
present, I believe SDL surfaces to be faster than software GL - this
kind of backend driver allows code to be portably fast for both cases.

C. glSDL is not a “complete” backend driver, it only provides some of
the functionality, and currently relies on the underlying SDL video
driver to provide the rest. I would like to keep it that way, so it
can work on top of any other SDL video driver that supports OpenGL. To
do this, I want to modify src/video/SDL_video.c so that it exports a
way to get a bootstrap of a video driver by name. Currently it allows
init’ing by name, but that means you can only have one initialized
video driver at a time. I would like glSDL to create its private
backend video driver and sit on top of it, providing some of the
functionality, and using its backend driver for the rest. Would this
work? (current_video -> glSDL, glSDL private data -> other video
driver)

D. I modified configure.in to support glSDL flags/etc. But I only do
this for the Linux platform code. I was wondering if someone more
knowledgable about SDL build/autoconf/automake could help me do these
modifications properly, so they can be integrated into SDL later.

E. glSDL had a check if SDL_HAS_OPENGL_H or so is defined. Does
SDL_opengl.h always exist? If so, I’d be able to delete a lot of the
glSDL boilerplate code.

Thanks!
Eyal Lotem

Eyal Lotem wrote:

Hello.
I am sorry if this is a redundant re-send, but I am pretty sure my
previous send got stuck at the list moderation (wrong from address).

I have begun work on “porting” the ancient glSDL to be a "modern"
backend video driver.
I was wondering about several things:

A. Is this work redundant? Is someone else already working on this?

You mean like http://icps.u-strasbg.fr/~marchesin/sdl/glsdl-final.patch ?

B. Is this undesirable? #sdl users seem to be very much against the
idea, even though I know that a lot of my SDL/pygame code can benefit
greatly from OpenGL rendering (and can easily hold all surfaces in
texture memory) without having to convert a lot of code to use the
much less convenient GL blitting directives. Also, when GL is not
present, I believe SDL surfaces to be faster than software GL - this
kind of backend driver allows code to be portably fast for both cases.

Something similar to glSDL is already done and working in SDL 1.3.

C. glSDL is not a “complete” backend driver, it only provides some of
the functionality, and currently relies on the underlying SDL video
driver to provide the rest. I would like to keep it that way, so it
can work on top of any other SDL video driver that supports OpenGL. To
do this, I want to modify src/video/SDL_video.c so that it exports a
way to get a bootstrap of a video driver by name. Currently it allows
init’ing by name, but that means you can only have one initialized
video driver at a time. I would like glSDL to create its private
backend video driver and sit on top of it, providing some of the
functionality, and using its backend driver for the rest. Would this
work? (current_video -> glSDL, glSDL private data -> other video
driver)

D. I modified configure.in to support glSDL flags/etc. But I only do
this for the Linux platform code. I was wondering if someone more
knowledgable about SDL build/autoconf/automake could help me do these
modifications properly, so they can be integrated into SDL later.

E. glSDL had a check if SDL_HAS_OPENGL_H or so is defined. Does
SDL_opengl.h always exist? If so, I’d be able to delete a lot of the
glSDL boilerplate code.

These questions are not really relevant any more.

Stephane