我试图通过只使用一个纹理来纹理一个立方体,但只在每个面上渲染它的一部分。
这是我现在想使用的纹理:
我的目标是通过着色器完成这项工作,我还没有使用它们的经验,但我正在努力学习..
这是我当前的片段着色器:
uniform sampler2D tex0;
void main()
{
vec2 pos = vec2(gl_TexCoord[0] / 4.0);
vec3 test = texture2D(tex0,pos).rgb;
gl_FragColor.rgb = test;
}
显然这只是开始,所有的边都使用纹理的相同部分,我只是着色器的新手,我什至不确定这是否真的可以这样做..
我只是不知道是否真的有可能确定我当前在哪张脸上等等,我想我可能能够将有关顶点的信息传递给片段着色器然后根据它采取行动?
PS:我首先这样做是因为我想要一个功能,如果立方体将被调整大小,每一面的纹理都会重复而不是拉伸