【问题标题】:OpenGL ES 2.0 Texture2D indexingOpenGL ES 2.0 Texture2D 索引
【发布时间】:2014-09-10 14:35:45
【问题描述】:

我了解texture2D 的一般工作原理。我的问题更具体。

在代码片段中:

  texture2D(sTexture, texCoord.st)

texCoord.stexCoord.t[0, 1] 之间,或者

它们是正方形的,还是

他们有图片尺寸吗?

如果它们不是[0, 1],那么将坐标st 设为浮点数有什么意义?

【问题讨论】:

    标签: opengl-es glsl texture2d


    【解决方案1】:

    Texcoords 在正常情况下是规范化的浮点数(范围 [0,1]),在 GL_TEXTURE_RECTANGLE 的情况下是非规范化的浮点数(范围分别为 [0,w] 或 [0,h])。

    纹理坐标在从中采样时永远不会是整数,而是始终是浮点数,因为没有获取特定的纹理元素,而是在某个位置采样纹理,而不仅仅是纹素中心。因此,在采样期间,纹素定义纹理空间中的矩形块,纹理过滤器将定义采样函数以使用为整个纹理空间中的每个位置定义结果颜色。例如,GL_LINEAR 将在相邻的纹素中心之间进行线性插值。

    【讨论】:

    • 所以如果我使用 GL_OES_EGL_image_external,那么它应该在 0,1 中吗?在网上很难找到这样的信息:)。感谢您的详细说明。
    • 嗯,我不熟悉那个特定的扩展,但是从简要浏览扩展规范来看,我认为它确实应该是这些纹理的普通 [0,1] 范围。
    猜你喜欢
    • 2015-07-05
    • 1970-01-01
    • 2012-11-10
    • 1970-01-01
    • 1970-01-01
    • 2015-08-08
    • 1970-01-01
    • 2013-09-14
    • 2011-06-14
    相关资源
    最近更新 更多