【问题标题】:how to change the size of the rendering surface in opengl/egl?如何在 opengl/egl 中更改渲染表面的大小?
【发布时间】:2014-01-21 09:03:48
【问题描述】:

我正在使用 C 语言在 OpenGL ES 2.0 中工作。(不是 Android) 我想改变 egl 表面的大小,以便我可以同时在屏幕上渲染两个不同的上下文。

是否可以调整 egl 表面的大小?

【问题讨论】:

    标签: opengl-es egl


    【解决方案1】:

    正在使用什么平台/窗口系统?窗口表面来自“窗口”——因此取决于窗口系统——例如,如果使用 X,它将来自客户端窗口。如果使用全屏“NULL”窗口系统,则为帧缓冲区的大小。如果是 Qt,一个 widgetsurface 或类似的。

    使用 NULL 系统的示例如下:

    https://github.com/prabindh/sgxperf/blob/master/sgxperf_gles20_vg.cpp

    回答 - EGL 仅指已创建的窗口,因此无法自行调整其大小。当客户端窗口调整大小时,EGL 必须更新其内部,而不是反过来。

    您可以使用 glviewport 来定位屏幕的不同区域。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 2013-07-04
      • 2013-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多