【问题标题】:How do I optimize my OpenGL textures for Remote Desktop/ANGLE?如何优化远程桌面/角度的 OpenGL 纹理?
【发布时间】:2021-06-01 08:00:01
【问题描述】:

我使用 Qt 在 OpenGL 中显示 2D 纹理。 不幸的是,我发现我需要支持通过远程桌面将我的应用程序运行到 Windows 7 PC。在这种情况下,我需要使用 OpenGL ES 2.0 API (ANGLE)。 由于带宽低,我的 2D 可视化似乎有些滞后。

我的纹理可能具有比屏幕更高的分辨率,因此需要对其进行缩小。 当不使用远程桌面时,我的方法是指定一个非常详细的纹理并让显卡进行缩小。

但是现在我认为 OpenGL 调用是在本地软件中执行的,而不是在远程机器上执行的?在什么情况下纹理必须通过 TCP/IP 传输?

这是否意味着我应该在使用纹理之前自己进行缩小? 例如,我可以在 C++ 中合并 2x2 像素并上传 1024x1024 纹理,而不是使用 2048x2048 纹理。

或者我可以使用glGenerateMipmap?

【问题讨论】:

    标签: c++ qt opengl-es remote-desktop


    【解决方案1】:

    我觉得这里有多个术语混淆了:RDP 只是为您传输整个远程桌面上的任何内容,因此没有“OpenGL 调用在本地软件中执行”。因此,不幸的是,如果您减小应用程序中的纹理大小,即使您完全删除它(尝试一下),它也无济于事。 RDP 并不适合实时动画。

    您的应用最好在用户计算机上本地运行,因此最好考虑如何将您的 OGL 应用分发给用户。 如果你不能在用户机器上安装你的应用程序,或者给他们安装包,那么 也许将您的应用程序转换为浏览器应用程序是一个更好的选择。

    WebGL 正是针对这类应用程序,也是一个标准: https://www.khronos.org/webgl/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-11
      • 1970-01-01
      相关资源
      最近更新 更多