GLES片段着色器,使用TextureRegion时获得0-1范围 - libGDX

时间:2016-10-22 04:41:39

标签: opengl-es libgdx shader

我有一个片段着色器,其中我使用v_texCoords作为某些效果的基础。如果我使用单个纹理,这可以正常工作,因为v_texCoords的范围始终为0 - 1,因此中心点总是(0.5,0.5)。如果我从TextureRegion的一部分绘图,我的着色器会因为v_texCoords不再是0-1而变得混乱。我可以使用任何方法或变量来在片段着色器中获得一致的0-1范围吗?我想避免设置制服,因为这意味着我需要为每次抽奖冲洗批次。

谢谢!

1 个答案:

答案 0 :(得分:0)

在着色器级别上不存在任何类似内容 - TextureRegions完全是一个libgdx构造,在OpenGL ES API级别根本不存在。

老实说,对于你正在尝试的东西,我只是建议不要为了两个正交目的而重载纹理坐标,只需添加一个单独的顶点属性,它提供0到1的数字。