我使用this link中的代碼來映射人臉紋理。此代碼使用GLKIT來呈現圖像。代碼可以在模擬器中正常工作,但如果我在設備中運行,則代碼不起作用。下面是它在設備中運行的圖像的屏幕截圖,而不是在我的ipad中。GLKit中的紋理映射不適用於設備
碼I用於加載紋理:模擬器的
- (void)loadTexture:(UIImage *)textureImage
{
glGenTextures(1, &_texture);
glBindTexture(GL_TEXTURE_2D, _texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
CGImageRef cgImage = textureImage.CGImage;
float imageWidth = CGImageGetWidth(cgImage);
float imageHeight = CGImageGetHeight(cgImage);
CFDataRef data = CGDataProviderCopyData(CGImageGetDataProvider(cgImage));
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, imageWidth, imageHeight, 0, GL_RGBA,
GL_UNSIGNED_BYTE, CFDataGetBytePtr(data));
}
圖片:
在裝置中的相同的代碼給出以下輸出:
有什麼我失蹤了?
可以有人請回答我的問題!! – 2vision2 2013-03-20 03:58:51
檢查:http://stackoverflow.com/a/7952288/2128327 – 2013-03-26 17:10:09