首页 > 解决方案 > 如何绘制到目标纹理大于屏幕分辨率的帧缓冲区?

问题描述

我正在尝试使用帧缓冲区绘制纹理。纹理的大小大于我的窗口大小。绘制完成后,任何出现在屏幕外部的东西都会被切断。

我尝试将视口设置为适合纹理分辨率并禁用剪刀测试(默认情况下禁用,反正我不使用)。我在某处读到我可能需要 RenderTarget,但我不明白为什么或如何在没有深度或模板缓冲区的情况下使用它。

标签: c++opengl

解决方案


使用帧缓冲区对象进行离屏绘图。无论如何,您都不应该使用基于窗口的帧缓冲区来渲染您想要重用的图片(纹理、保存到文件等),因为窗口的帧缓冲区及其内容可能随时变得无效(即使在完成渲染和调用之间的时间glReadPixels)。


推荐阅读