【问题标题】:Is rectangle texture supported by GLES 2.0GLES 2.0 是否支持矩形纹理
【发布时间】:2012-11-27 15:51:21
【问题描述】:

我从一个网站知道矩形纹理可用于屏幕大小的图像。但是,对于函数glGetTexParameterfv,只接受GL_TEXTURE_2DGL_TEXTURE_CUBE_MAP。这是否意味着 OpenGL ES 2.0 不支持矩形纹理或GL_TEXTURE_RECTANGLE?而且我想知道这是否意味着只能在着色器中使用归一化的纹理坐标?谢谢。

【问题讨论】:

    标签: opengl-es-2.0


    【解决方案1】:
    • About GL_TEXTURE_RECTANGLE

    • 纹理坐标只是顶点之间的插值。但是对于 2D 纹理,它的值在 0.0 到 1.0 范围内(如果你不平铺纹理)。对于纹理立方体,它的向量(可以是非归一化的)

    【讨论】:

    • 感谢您的帮助。我想知道如果使用非归一化向量作为纹理坐标,精度是多少?
    • @Timothy 最终精度由sampler 和精度参数paragraph 4.5 定义。
    • @Timothy 我的意思是你不能让采样器比定义的着色器精度更精确。但是您可以在将纹理传递给采样器之前拆分纹理或使用 txture 坐标执行某些操作(例如拆分为整数和小数部分,然后在片段着色器中组合)以避免由于高数操作而丢失精度。
    • 谢谢@JAre。但我还是有点困惑。例如,给定大小为 2048 * 2048 的纹理,如果我使用归一化向量对纹理进行采样,则精度为 2^-10,因此我无法对所有像素进行采样。但是,如果不对向量进行归一化,虽然精度仍然是 2^-10,但纹理的所有像素都是可以访问的,因为可以使用另外 5 位的指数对图像进行采样。所以我想知道我是否有可能以这种方式对纹理进行采样以获得更高的分辨率?
    • 嗯,我明白了。谢谢你的帮助,我会去看看 Megatexture 是否可以工作。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-12
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多