*** empty log message ***

git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@753 e016b1c5-ed68-44aa-a2f7-31cac88cffde
This commit is contained in:
Lee Salzman
2006-11-29 23:03:43 +00:00
parent 50a97671ab
commit fbd642f909
+5 -8
View File
@@ -71,6 +71,8 @@ void cleangl()
{
};
VAR(warnqual, 0, 0, 1);
GLuint installtex(const char *texname, int &xs, int &ys, bool clamp)
{
SDL_Surface *s = IMG_Load(texname);
@@ -95,21 +97,16 @@ GLuint installtex(const char *texname, int &xs, int &ys, bool clamp)
ys = s->h;
if(maxtexsize) while(xs>maxtexsize || ys>maxtexsize) { xs /= 2; ys /= 2; };
int mode = s->format->BitsPerPixel==24 ? GL_RGB : GL_RGBA;
uchar *scaledimg = (uchar *)s->pixels;
if(xs!=s->w)
{
conoutf("warning: quality loss: scaling %s", texname); // for voodoo cards under linux
scaledimg = new uchar[xs*ys*s->format->BitsPerPixel/8];
if(gluScaleImage(mode, s->w, s->h, GL_UNSIGNED_BYTE, s->pixels, xs, ys, GL_UNSIGNED_BYTE, scaledimg))
if(warnqual) conoutf("warning: quality loss: scaling %s", texname); // for voodoo cards under linux
if(gluScaleImage(mode, s->w, s->h, GL_UNSIGNED_BYTE, s->pixels, xs, ys, GL_UNSIGNED_BYTE, s->pixels))
{
xs = s->w;
ys = s->h;
delete[] scaledimg;
scaledimg = (uchar *)s->pixels;
};
};
if(gluBuild2DMipmaps(GL_TEXTURE_2D, mode, xs, ys, mode, GL_UNSIGNED_BYTE, scaledimg)) fatal("could not build mipmaps");
if(xs!=s->w) delete[] scaledimg;
if(gluBuild2DMipmaps(GL_TEXTURE_2D, mode, xs, ys, mode, GL_UNSIGNED_BYTE, s->pixels)) fatal("could not build mipmaps");
SDL_FreeSurface(s);
return tnum;
};