- SDL_Surface *bitmap = IMG_Load(filename);
- SDL_Surface *conv = SDL_CreateRGBSurface(
- SDL_SWSURFACE, bitmap->w, bitmap->h, 32,
- 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000);
- SDL_BlitSurface(bitmap, 0, conv, 0);
- GLuint textureID;
- glGenTextures(1, &textureID);
- glBindTexture(GL_TEXTURE_2D, textureID);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
- GL_LINEAR_MIPMAP_LINEAR);
- glTexParameteri(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, GL_TRUE);
- glTexImage2D(
- GL_TEXTURE_2D, 0, GL_RGBA, conv->w, conv->h,
- 0, GL_RGBA, GL_UNSIGNED_BYTE, conv->pixels
- );
- SDL_FreeSurface(bitmap);
- SDL_FreeSurface(conv);