【发布时间】:2014-02-19 07:04:42
【问题描述】:
在我的笔记本电脑(英特尔高清显卡)上,当我尝试绘制纹理时,它会正确包裹。但是,当我将台式机与 nvidia 显卡一起使用时,它将不再包裹,并且会钳制到 0..1。我的图像加载编码发布在下面。如您所见,我明确地将纹理包装设置为重复。
int x, y, comp;
GLuint texID;
unsigned char* data = stbi_load(filename, &x, &y, &comp, 0);
glGenTextures(1, &texID);
glBindTexture(GL_TEXTURE_2D, texID);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, x, y, 0, (comp == 3) ? GL_RGB : GL_RGBA, GL_UNSIGNED_BYTE, data);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
stbi_image_free(data);
m_resourceMap[resID] = texID;
【问题讨论】: