【发布时间】:2020-06-27 19:09:21
【问题描述】:
我有一个使用 OpenGL 的 4K 项目。所以我所有的图像都是基于 4K 的,它可以在我的全屏 1080p 计算机上渲染。 OpenGL 只是很好地调整大小而没有问题。但我想使用 glReadPixels() 之类的东西从 4K 源读取缓冲区。到目前为止,我无法弄清楚这是否可能。不确定 GPU 帧缓冲区在调整大小时会发生什么,我猜它只是将缓冲区调整为 1080p,从而无法获取原始的 4k 内容?如果是这种情况,我会做其他事情,但在我冒险编写一些额外的代码之前必须先问清楚。 ;-) 谢谢。
【问题讨论】:
-
我可以做的一件事是使用 glReadPixels 并且只是放大整个图像的缩小比例,而不是在窗口为 4K 时重新缩放。只需要为此正确计算即可。但如果可能的话,我真的希望我能获取原始的 4K 缓冲区。
-
也许我将不得不采取不同的方法。我需要这个,这样我就可以在在其上绘制一些东西之前获取背景。例如,像旋钮一样。所以也许我必须想出我自己的具有 4K 背景的缓冲层。我会想办法的,我猜。如果以上都做不到。