我使用OpenGL 4.4在Windows 7计算机上运行X服务器。从那里我ssh -Y到远程机器,在那里我启动了一个OpenGL应用程序。(重要的是,网络连接非常快,我已经关闭了压缩,并使用弧形四,河豚-cbc密码的速度)。
glxgears运行,但不是很顺利。不过,有报道称,它正在做6000+ FPS。
但是,matlab无法使用硬件OpenGL呈现。我读了这些文档,他们提到它需要OpenGL版本2.1。当我在glxinfo终端上运行ssh时,它告诉我:
GLX版本: 1.4 OpenGL版本字符串: 1.4 (4.4.0-Build10.18.15.4279)
我不知道GLX的技术细节,但这是否意味着SSH支持的OpenGL版本仅限于1.4?据我所知,与OpenGL的进展相比,GLX的最新版本已经相当老了。
发布于 2016-10-27 08:44:41
我使用OpenGL 4.4在Windows7计算机上运行X服务器
第一个问题从这个开始。Windows上的X11服务器只是运行在那里的另一个程序,最终将把X11命令转换为Win32 GDI调用。X11本身并不“知道”OpenGL,这就是为什么会有GLX扩展。GLX是一种有趣的工具,windows的X11服务器都只实现了一个非常基本的OpenGL命令基线来支持基本要素。
但这只是你问题的一半…
从那里我从ssh -Y到远程计算机,在那里我启动了OpenGL应用程序。
做这类事情总是会调用间接呈现,其中所有命令都必须作为GLX操作码命令流发送。不幸的是(对您来说) GLX操作码只被指定为OpenGL-2.1,但是GLX完全支持只对OpenGL-1.4是强制性的。OpenGL-1.5引入了顶点缓冲区对象,这为间接呈现上下文增加了相当多的复杂性,因此GLX实现可能选择不支持间接渲染。
至少对于Linux来说,专有的NVidia驱动程序和客户端库具有完全间接的Openg-2.1支持。但是您在Windows上运行的X11服务器,很可能客户端库不运行。
https://stackoverflow.com/questions/40260056
复制相似问题