这是我的输出:![在此处输入图像描述][2]
当我的墙壁很长时,图像会被拉伸,而当它们很小时,图像会被挤压。
我的加载纹理的代码,loadTGATexture 方法来自 superBible。
glGenTextures(1,&texture);
glBindTexture(GL_TEXTURE_2D,texture);
LoadTGATexture(textureFile, GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR, GL_REPEAT);
我给出纹理坐标的代码片段是:(j 是建筑物墙壁的索引)
buildingArray[j][0] = n2.x;
buildingArray[j][3] = 0;
buildingArray[j][4] = n2.y;
texBlgArray[j][0] = repeat_after_length;
texBlgArray[j][5] = 0;
normals[j][0] = normal.x;
normals[j][6] = normal.y;
normals[j][7] = normal.z;
j++;
我将长度后的重复设置为1。
我认为如果长度 > 1 会发生纹理 GL_REPEAT,我应该将其设置为大于 1 的某个值,但如果我这样做,纹理中的窗口会变得非常小并且不会很大。的窗口是可见的。我想平铺纹理,我不希望我的原始纹理图像的尺寸发生任何变化:
我究竟做错了什么 ?