X-Window export possible?

Since I am familiar with the SDL I write a lot of my smaller test
applications using it even though display speed is not that important.

Now I want to start one of these tests on a remote compute-server with
more processing power. It there a way to redirect to X-window output? I
know that SDL makes use of the local framebuffer but maybe there is
another compilation of the lib that uses ordinary X-calls? Or do I have
to port my program? If yes - what comes closest to the SDL/ is least
complicated?

Thanks in advance,

Thomas

Now I want to start one of these tests on a remote compute-server with
more processing power. It there a way to redirect to X-window output?

This is something that we do a lot in school, when sitting on crappy
workstation we often login remotely to a faster server-type machine. We
use “xon”, though we have never tried it with SDL it should work nicely
since SDL is working on top of X and xon works transparently on
X-traffic.

The bottleneck here is probably the network… but if computation power
is favored over grafik output speed, it should not be a problem on a
reasonably fast network.

/Pontus

On Fri, 30/08/2002 15:30:00 , Pontus Pihlgren
[…]

The bottleneck here is probably the network… but if computation power
is favored over grafik output speed, it should not be a problem on a
reasonably fast network.

Well, let’s just say that on a 10 Mbit network, you’ll get a genuine modem feeling to the rendering… :wink:

Tried on a 100 Mbit cross-over as well, and that works pretty well.

//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 Real

I tried xon and I always get

net-tools 1.60
hostname 1.100 (2001-04-14)

and nothing else until I kill the task. I tried to configure a .rhosts
in my $HOME but that didn’t solve the problem as well. I also did xhost

  • on the local mashine. What is missing?

The bottleneck here is probably the network… but if computation power
is favored over grafik output speed, it should not be a problem on a
reasonably fast network.
Well, let’s just say that on a 10 Mbit network, you’ll get a genuine modem feeling to the rendering… :wink:
Tried on a 100 Mbit cross-over as well, and that works pretty well.

Are you able to view SDL apps from a different machine than the local
display owner?

I’ve not been able to do it, every app, included SDL demos, failed to
create the window… (obviously X apps like xclock or mozilla works like
a charm on the remote display)

Bye,
Gabry

Are you able to view SDL apps from a different machine than the local
display owner?

I’ve not been able to do it, every app, included SDL demos, failed to
create the window…

I thought the SDL writes into the framebuffer directly so isn’t that
actually the trick? I mean, how should that be redirected on a network?

If SDL attempts to use any hardware acceleration when forwarding to a remote X server it will fail. If for some reason it succeeded, it would display on the servers display and not on your display. This is a problem with anything that directly accesses the video card for speed reasons. This includes MS Windows. Try doing a remote VNC session of a win-box and play a movie. It’ll will only appear black as it is skipping the GDI. The only solution would be if SDL detected the ‘remote’ state and used native GDI calls or copied from the vid-card memory back into system memory for fowarding purposes (which we all know is dog-slow).

~Rob> ----- Original Message -----

From: Thomas Haenselmann [mailto:haenselmann@informatik.uni-mannheim.de]
Sent: Friday, August 30, 2002 9:55 AM
To: sdl at libsdl.org
Subject: Re: [SDL] X-Window export possible?

Are you able to view SDL apps from a different machine than the local
display owner?

I’ve not been able to do it, every app, included SDL demos, failed to
create the window…

I thought the SDL writes into the framebuffer directly so isn’t that
actually the trick? I mean, how should that be redirected on a network?


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

Bare in mind that you can only use xon if you can login to the other
machine without a password… Otherwise, ssh (or telnet) to the other
box and type:

in sh:
export DISPLAY:0=machine.you.are.sitting.infront.of.edu

or in csh:
setenv DISPLAY machine.you.are.sitting.infront.of.edu:0

also, on your local machine type:

xhost +machine.you.are.remotely.logging.into.edu

That should do the trick… Any X programs you start over your
telnet/ssh connection should open on your local display.

-LorenOn Fri, 2002-08-30 at 08:51, Thomas Haenselmann wrote:

I tried xon and I always get

net-tools 1.60
hostname 1.100 (2001-04-14)

and nothing else until I kill the task. I tried to configure a .rhosts
in my $HOME but that didn’t solve the problem as well. I also did xhost

  • on the local mashine. What is missing?

SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl

This is getting pretty off-topic so I’ll shut up after this message, but:

ssh (usually – you can turn this off) sets up an encrypted X tunnel
automatically and sets DISPLAY itself to point to this tunnel. So you can
just say “ssh remotemachine remotecommand” (although the default PATH might
be more restricted than you expect). The encryption will probably slow
things down more, though, so you still might want to set DISPLAY directly as
you suggest.

In an on-topic vein: I’m running my IceBreaker SDL game over remote X
tunneled through SSH right now, and it’s quite playable (slow when it has to
redraw a large area, but just moving the sprites around is fine). I don’t
notice much speed difference going directly, either.On Fri, Aug 30, 2002 at 10:37:36AM -0700, Loren Osborn wrote:

Bare in mind that you can only use xon if you can login to the other
machine without a password… Otherwise, ssh (or telnet) to the other
box and type:
in sh:
export DISPLAY:0=machine.you.are.sitting.infront.of.edu
or in csh:
setenv DISPLAY machine.you.are.sitting.infront.of.edu:0


Matthew Miller @Matthew_Miller http://www.mattdm.org/
Boston University Linux ------> http://linux.bu.edu/