Ich versuche erfolglos, ein Programm auszuführen, das OpenGL verwendet, um ein Modell in einem Ansichtsfenster über VNC zu rendern.
Die Fehlermeldung lautet - Xlib: Erweiterung "GLX" fehlt auf Anzeige ": 1.0".
Ich habe verstanden, dass VNC so konfiguriert werden kann, dass alle Grafiken remote gerendert werden und ein komprimiertes Screen Grab vom Anzeigepuffer an den lokalen Client gesendet wird. Dies scheint die Notwendigkeit für GLX-Erweiterungen auf dem lokalen Client zu negieren. Kann VNC auf diese Weise konfiguriert werden und können Sie kurz beschreiben, wie?
Remote-Host:
vncserver auf RHEL 5
Lokaler Client:
UltraVNC unter Windows XP
Antworten:
Vielleicht möchten Sie sich Virtual GL ansehen
Zitat: "VirtualGL ist ein Open-Source-Paket, mit dem jede Unix- oder Linux-Remote-Display-Software OpenGL-Anwendungen mit voller 3D-Hardwarebeschleunigung ausführen kann."
quelle
Ich verwende x11vnc , um Fernzugriff auf das zu erhalten, was auf dem Monitor angezeigt wird. x11vnc kommuniziert mit dem lokalen X11-Server und kopiert den Framebuffer über vnc vom Server auf den Client. Da der lokale X11-Server alles mit Hardwarebeschleunigung rendert, erhalte ich hardwarebeschleunigtes OpenGL über VNC, auch mit all den coolen Desktop-Effekten. So starte ich x11vnc:
Ich denke, fast jeder VNC-Viewer funktioniert, aber ich würde TurboVNC oder TigerVNC empfehlen. Ich habe zuerst VirtualGL ausprobiert und es funktioniert einwandfrei, aber nicht für den gesamten Desktop, sondern nur für einzelne OpenGL-Anwendungen.
Es ist sogar möglich, die Auflösung auf dem Display / VNC mit xrandr zu ändern. ZB so:
(Es ist möglich, neue Auflösungen hinzuzufügen, wenn die verfügbaren Modi nicht ausreichen, aber das ist hier nicht möglich.)
Jetzt habe ich eine vollständig OpenGL-Hardware-beschleunigte und skalierbare VNC-Sitzung.
quelle
Deaktivieren Sie den von UltraVNC verwendeten speziellen Video Hook-Treiber oder verwenden Sie TightVNC.
Da der UltraVNC-Treiber verwendet wird, um die Leistung zu verbessern, werden alle auf der Grafikkarte ausgeführten Videoverarbeitungsvorgänge, z. B. OpenGL, gelöscht.
Der von UltraVNC standardmäßig installierte Grafiktreiber macht es so, dass keine OpenGL-Grafiken angezeigt werden können. Beachten Sie, dass das Deaktivieren des Treibers die Leistung drastisch verringert. Beachten Sie auch, dass beim Anzeigen von in OpenGL gerenderten Elementen die Leistung auf beiden Seiten beeinträchtigt wird, da der Clientcomputer jetzt viel mehr Arbeit zu erledigen hat und die erforderliche Bandbreite viel höher ist. Erwarten Sie nichts über 4 Sekunden pro Bild (nicht 4 fps, eher 0,25 fps)
quelle