Загрузка файла tga / bmp в C ++ / OpenGL

Я пытаюсь загрузить файл tga / bmp. Это работает нормально, но конечный результат выглядит так:

Изображение, которое я пытаюсь загрузить, выглядит так:

Часть кода, который я использую:

GLuint texture;
const char* filename = "/Users/Admin/Documents/Visual Studio 2013/Projects/OpenGL/OpenGL/image.tga";

unsigned char* data;
data = (unsigned char *) malloc(128 * 128 * 3);
FILE* f;
fopen_s(&f, filename, "rb");
fread(data, 128 * 128 * 3, 1, f);

glGenTextures(1, &texture);
glBindTexture(GL_TEXTURE_2D, texture);

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 128, 128, 0, GL_RGB, GL_UNSIGNED_BYTE, data);

У кого-нибудь есть идея, что я делаю не так?

Ответы на вопрос(2)

Ваш ответ на вопрос