Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I run an OpenGL application installed on a linux machine from my windows machine?

In the spirit of being helpful, this is a problem I had and solved, so I will answer the question here.

Problem

I have:

An application that has to be installed on on Redhat or SuSE enterprise.

It has huge system requirements and requires OpenGL.

It is part of a suite of tools that need to operate together on one machine.

This application is used for a time intensive task in terms of man hours.

I don't want to sit in the server room working on this application.

So, the question came up... how do I run this application from a remote windows machine?

I'll outline my solution. Feel free to comment on alternatives. This solution should work for simpler environments as well. My case is somewhat extreme.

like image 316
scubabbl Avatar asked Sep 19 '08 22:09

scubabbl


People also ask

Is OpenGL supported on Linux?

Linux. Graphics on Linux is almost exclusively implemented using the X Window system. Supporting OpenGL on Linux involves using GLX extensions to the X Server. There is a standard Application Binary Interface defined for OpenGL on Linux that gives application compatibility for OpenGL for a range of drivers.

Does xming support OpenGL?

Xming provides the X Window System display server, a set of traditional sample X applications and tools, as well as a set of fonts. It features support of several languages and has Mesa 3D, OpenGL, and GLX 3D graphics extensions capabilities.

Does OpenGL use X11?

OpenGL with X11 can run in two different modes: direct rendering and indirect rendering. The difference between them is that indirect rendering uses the GLX protocol to relay the OpenGL commands from the program to the hardware, which limits OpenGL capabilities to OpenGL 1.4.


2 Answers

Solution

I installed two pieces of software:

PuTTY

XMing-mesa The mesa part is important.

PuTTY configuration

Connection->Seconds Between Keepalives: 30
Connection->Enable TCP Keepalives: Yes

Connection->SSH->X11->Enable X11 forwarding: Yes
Connection->SSH->X11->X display location: localhost:0:0

Lauching

Run Xming which will put simply start a process and put an icon in your system tray. Launch putty, pointing to your linux box, with the above configuration. Run program

Hopefully, Success!

like image 152
scubabbl Avatar answered Sep 19 '22 21:09

scubabbl


If you want the OpenGL rendering to be performed on your local machine, using a Windows X server, like Xming is a good solution. However, if you want rendering to be done on the remote end with just images sent to the local machine, you want a specialized VNC system that can handle remote OpenGL rendering, like VirtualGL.

like image 21
tkerwin Avatar answered Sep 19 '22 21:09

tkerwin