Я рендую оранжевую тыкву в opengl es 1.1 на iphone.
В симуляторе тыква отрисовывается, как и ожидалось - это правильный оранжевый цвет.
Когда я тестирую наустройство тыква становится синим.
Что вызывает это и как я могу это исправить?
спасибо
изменить, вот мой код загрузки текстуры:
void LoadPngImage(const std::string& filename) {
NSString* basePath = [NSString stringWithUTF8String:filename.c_str()];
NSString* resourcePath = [[NSBundle mainBundle] resourcePath];
NSString* fullPath = [resourcePath stringByAppendingPathComponent:basePath];
UIImage* uiImage = [UIImage imageWithContentsOfFile:fullPath];
CGImageRef cgImage = uiImage.CGImage;
m_imageSize.x = CGImageGetWidth(cgImage);
m_imageSize.y = CGImageGetHeight(cgImage);
m_imageData = CGDataProviderCopyData(CGImageGetDataProvider(cgImage));
}
void* GetImageData() {
return (void*)CFDataGetBytePtr(m_imageData);
}
редактировать, добавив больше кода:
glGenTextures(1, &m_texture);
glBindTexture(GL_TEXTURE_2D, m_texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
m_resourceManager->LoadPngImage("Pumpkin64.png");
void* pixels = m_resourceManager->GetImageData();
ivec2 size = m_resourceManager->GetImageSize();
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, size.x, size.y, 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);
m_resourceManager->UnloadImage();