The multiscreen question again

I know these questions have been asked in the past, but it seems to me
that they’re only going to become more frequent (that new card from
Matrox supports 3 screens!) and I can’t remember the answer:

What are the current thoughts on, and the status of, opening multiple
screens and being able to position windows in the window manager with
SDL? My project needs multiscreen and window positioning capabilities
on win32, Mac OS X, and X11, and I’m going to have to switch to a
different library or hack my own solution unless SDL goes this way. I
know that SDL target platforms include consoles, PDAs, and probably
fancy new refrigerators, so I can understand if this can’t be included
as standard SDL, although it seems like it would be useful for many
people currently using SDL.

Can anyone recommend a course of action? The code I currently use from
SDL is fairly minimal. It is only used to open a window for OpenGL and
to get keystrokes, so moving to a different solution wouldn’t be too
difficult, and would perhaps be a better fit, since I don’t need any of
SDL’s non-OpenGL 2D capabilities. (Although glSDL could be handy…)

Thanks,
Andrew Straw

I know these questions have been asked in the past, but it seems to me
that they’re only going to become more frequent (that new card from
Matrox supports 3 screens!) and I can’t remember the answer:

Can anyone recommend a course of action? The code I currently use from
SDL is fairly minimal. It is only used to open a window for OpenGL and
to get keystrokes, so moving to a different solution wouldn’t be too
difficult, and would perhaps be a better fit, since I don’t need any of
SDL’s non-OpenGL 2D capabilities. (Although glSDL could be handy…)

AFAIK, the triple screen gaming on the new Parhelia requires a special
resolution and FOV change to work across 3 screens. So I don’t think SDL
will be a problem if you’re wanting to do GL across 3 screens. You don’t
need 3 seperate contexts to my knowledge.On Mon, 2002-07-01 at 22:24, Andrew Straw wrote:

I know these questions have been asked in the past, but it seems to me
that they’re only going to become more frequent (that new card from
Matrox supports 3 screens!) and I can’t remember the answer:

…and it seems like the high resolution capabilities will be at least as good as on their previous cards. (That is, usable with serious analog monitors.)

Can’t wait to get my hands on one. :slight_smile:

What are the current thoughts on, and the status of, opening multiple
screens and being able to position windows in the window manager with
SDL?

Well, IIRC, someone hacked a half-way solution (video, but not event handling) for Solaris or something. I was about to port it to Linux, but got sidetracked. (Frankly, I can’t even remember if I actually did anything with it or not… heh)

Anyway, this is most probably not going into the mainstream SDL 1.2.x, at least not unless we can figure out some ingenious way to add it without breaking compatibility in either direction.

My project needs multiscreen and window positioning capabilities
on win32, Mac OS X, and X11, and I’m going to have to switch to a
different library or hack my own solution unless SDL goes this way. I
know that SDL target platforms include consoles, PDAs, and probably
fancy new refrigerators, so I can understand if this can’t be included
as standard SDL, although it seems like it would be useful for many
people currently using SDL.

Apart from the API and the implementation issues on some platforms, this is not a problem. To deal with targets w/o window managers, either provide generic SDL hooks for window managers, so that applications can provide their own WM (or some simple build-in default WM) for fullscreen modes, or just report an error if an application asks for stuff that requires a WM, or tries to open a secondary display on a single headed system.

Can anyone recommend a course of action? The code I currently use from
SDL is fairly minimal. It is only used to open a window for OpenGL and
to get keystrokes, so moving to a different solution wouldn’t be too
difficult, and would perhaps be a better fit, since I don’t need any of
SDL’s non-OpenGL 2D capabilities.

Well, maybe you should look for some wgl/glx/… wrapper instead?

I would say SDL offers plenty of useful stuff in the “system interfacing” area, especially for portable apps, but if you don’t need any of it…

(Although glSDL could be handy…)

IMHO, if you’re using OpenGL, glSDL isn’t really for you. glSDL is primarilly designed to run normal (2D) SDL applications on OpenGL, to make serious hardware acceleration available on more platforms.

That said, maybe the tiling stuff is handy enough to put in a separate library, redesigned for cooperation with OpenGL code? (I think it’s too low level to be truly useful for that, but I might be missing something.)

//David

.---------------------------------------
| David Olofson
| Programmer

david.olofson at reologica.se
Address:
REOLOGICA Instruments AB
Scheelev?gen 30
223 63 LUND
Sweden
---------------------------------------
Phone: 046-12 77 60
Fax: 046-12 50 57
Mobil:
E-mail: david.olofson at reologica.se
WWW: http://www.reologica.se

`-----> We Make Rheology RealOn Tue, 2/07/2002 12:54:54 , Andrew Straw <andrew.straw at adelaide.edu.au> wrote:

What are the current thoughts on, and the status of, opening multiple
screens and being able to position windows in the window manager with
SDL?

Well, IIRC, someone hacked a half-way solution (video, but not event
handling) for Solaris or something. I was about to port it to Linux,
but got sidetracked. (Frankly, I can’t even remember if I actually did
anything with it or not… heh)

Anyone recall what this or where I might find it? Or have any pointers
to other source that does it?

Well, maybe you should look for some wgl/glx/… wrapper instead?

GLUT apparently does multi-windows and screen positioning on GLX and
win32, so I’ll probably start there. And Apple (Mac OS X) has a
"GLImage" demo that opens multiple windows using their native WM stuff.
In other words, it looks do-able.

Anyway, this is most probably not going into the mainstream SDL 1.2.x,
at least not unless we can figure out some ingenious way to add it
without breaking compatibility in either direction.

Well, if I do the “hard” part of writing the code, you can do the
ingenious part of adding it to the API! :slight_smile:

That said, maybe the tiling stuff is handy enough to put in a separate
library, redesigned for cooperation with OpenGL code? (I think it’s too
low level to be truly useful for that, but I might be missing
something.)

Because nVidia’s cards support 2048 pixel wide textures, I’ve been able
to side-step this issue. But if such a library was just a download and
compile away, I would surely try and use it.

AndrewOn Wednesday, July 3, 2002, at 01:14 AM, David Olofson wrote:

On Tue, 2/07/2002 12:54:54 , Andrew Straw <@Andrew_Straw> wrote:

[…multiwindow SDL…]

Well, if I do the “hard” part of writing the code, you can do the
ingenious part of adding it to the API! :slight_smile:

I could try, I can’t see any sensible way of doing it without adding one or two calls… :slight_smile:

That said, maybe the tiling stuff is handy enough to put in a separate
library, redesigned for cooperation with OpenGL code? (I think it’s too
low level to be truly useful for that, but I might be missing
something.)

Because nVidia’s cards support 2048 pixel wide textures, I’ve been able
to side-step this issue. But if such a library was just a download and
compile away, I would surely try and use it.

BTW, how about a generic one that handles arbitrary triangles and quads in 3D as well? (Would have to do perspective correct transformations of texcoords and other fun stuff. :slight_smile:

//David

.---------------------------------------
| David Olofson
| Programmer

david.olofson at reologica.se
Address:
REOLOGICA Instruments AB
Scheelev?gen 30
223 63 LUND
Sweden
---------------------------------------
Phone: 046-12 77 60
Fax: 046-12 50 57
Mobil:
E-mail: david.olofson at reologica.se
WWW: http://www.reologica.se

`-----> We Make Rheology RealOn Wed, 3/07/2002 11:43:26 , Andrew Straw <andrew.straw at adelaide.edu.au> wrote: