【发布时间】:2013-06-05 23:46:16
【问题描述】:
我正在尝试使用 iOS 和 GL ES1 对纹理进行全屏渲染。我已经使用带有附加纹理的 FBO 实现了这一点,并且工作正常。
但我不确定我的方法是否正确: iPhone 屏幕不是二次方的,所以我所做的是将 glViewport 设置为最接近的 POT 值以匹配纹理大小,然后将其映射到与屏幕大小相同的四边形。这可行,但图像看起来有点模糊。
是否可以仅绘制附加到 FBO 的纹理的一部分,然后相应地映射四边形 UV 坐标?
另一种方法是使用非罐纹理,但我想避免这种情况。
【问题讨论】:
-
为什么不简单地渲染到 NPOT 纹理?除了最旧的 iOS 设备(原始 iPhone、iPhone 3G)support NPOT textures 之外的所有设备。这些旧设备在当今使用的设备中所占的比例可以忽略不计,因此忽略它们是安全的。
-
你是对的,但我也在计划一个 android 端口,我不确定是否所有的 android 设备都提供 NPOT 支持。我还听说 Npot 纹理通常比 pot 稍慢。