我正在尝试使用 PVRTC 图像而不是 PNG。问题是,我无法在地图上看到它们。
这是我的代码:
glGenTextures(1, &bg1Texture);
glBindTexture(GL_TEXTURE_2D, bg1Texture);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
NSString *path = [[NSBundle mainBundle] pathForResource:@"starfield_00" ofType:@"pvr"];
NSData *texData = [[NSData alloc] initWithContentsOfFile:path];
glCompressedTexImage2D(GL_TEXTURE_2D, 0, GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG, 512, 512, 0, [texData length], [texData bytes]);
[texData release];
我使用这个命令来创建压缩纹理:
texturetool -e PVRTC --bits-per-pixel-2 -o starfield_00.pvr -f PVR starfield_00.png
glGetError()返回 1281(绑定纹理失败)。但是,如果我检查glIsTexture (),它会返回 true。
有任何想法吗?哦,我在 iPhone 上使用 OpenGL ES。