42 #ifdef CHECK_MEMORY_LEAKS
44 #endif // CHECK_MEMORY_LEAKS
60 glGenTextures(1, &
id);
61 glBindTexture(GL_TEXTURE_2D,
id);
62 glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
63 i->getWidth(), i->getHeight(), 0,
64 GL_RGBA, GL_UNSIGNED_BYTE, i->getData());
65 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
66 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
67 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP);
68 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP);
69 glBindTexture(GL_TEXTURE_2D, 0);
84 if (!gAllowTextures) {
87 glEnable(GL_TEXTURE_2D);
88 glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
89 glDisable(GL_CULL_FACE);
91 glDisable(GL_LIGHTING);
92 glDisable(GL_COLOR_MATERIAL);
93 glDisable(GL_TEXTURE_GEN_S);
94 glDisable(GL_TEXTURE_GEN_T);
95 glDisable(GL_ALPHA_TEST);
97 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
98 glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
99 glBindTexture(GL_TEXTURE_2D, which);
100 glBegin(GL_TRIANGLE_STRIP);
102 glVertex2d(sizeX1, sizeY1);
104 glVertex2d(sizeX1, sizeY2);
106 glVertex2d(sizeX2, sizeY1);
108 glVertex2d(sizeX2, sizeY2);
110 glBindTexture(GL_TEXTURE_2D, 0);
111 glEnable(GL_DEPTH_TEST);
134 WRITE_ERROR(
"Could not load '" + filename +
"'.\n" + e.what());