【发布时间】:2016-07-16 23:11:52
【问题描述】:
所以我要做的是将当前前端缓冲区复制到纹理,并在调整大小期间使用它来模仿正常窗口调整大小会做的事情。我这样做是因为场景在调整大小期间渲染成本太高,我想提供流畅的调整大小。
纹理处理很好,但我正在努力计算数学以使纹理适当地缩放和平移(我知道当放大到最大图像尺寸之外时会有可见的边框)。
谁能帮帮我?
【问题讨论】:
标签: opengl resize aspect-ratio
所以我要做的是将当前前端缓冲区复制到纹理,并在调整大小期间使用它来模仿正常窗口调整大小会做的事情。我这样做是因为场景在调整大小期间渲染成本太高,我想提供流畅的调整大小。
纹理处理很好,但我正在努力计算数学以使纹理适当地缩放和平移(我知道当放大到最大图像尺寸之外时会有可见的边框)。
谁能帮帮我?
【问题讨论】:
标签: opengl resize aspect-ratio
但我正在努力计算数学以使纹理适当缩放和翻译
嗯,这取决于您的视野基于哪个轴。如果是纵轴,那么增加宽高比必然会导致左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下左右上下对比。如果您的 FOV 基于水平轴,则类似的增加高度/宽度将信箱顶部和底部。如果方面变化相反,您就没有信箱,因为您不需要为此提供额外的图片信息。
不幸的是,没有一种万能的解决方案。要么您使用一些边框,要么在不保留外观的情况下拉伸图像,或者在调整窗口大小之前,您使用更大的 FOV 渲染为仅显示子集的二次纹理。
【讨论】: