我想允许用户通过降低分辨率来调整窗口模式性能,而不改变必须保持固定的实际窗口的大小。如果我用 glViewport 改变它,它实际上会处理更少的片段,还是纯粹的视觉转换?假设我在我的着色器中进行了早期深度测试,如果这很重要的话。
问问题
1515 次
1 回答
2
如果将视口设置为窗口大小的子集,则将绘制更少的片段。问题是您是否真的希望您的渲染只覆盖窗口的一部分?
您通常做的是渲染到具有较低分辨率的帧缓冲区对象 (FBO) 。作为最后一步,您将 FBO blit 到默认帧缓冲区(将结果缩放到进程中的窗口大小)。
当您渲染到 FBO 时,您必须将 glViewport 设置为 FBO 的分辨率。
于 2012-10-30T14:39:48.347 回答