X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fglx%2Fcircuit.c;h=b59b470b279e77537b35345a4ea1af18aed59320;hp=da3be7709efc75e882a47dec68a44f35a51b5d9e;hb=f8cf5ac7b2f53510f80a0eaf286a25298be17bfe;hpb=ec8d2b32b63649e6d32bdfb306eda062769af823 diff --git a/hacks/glx/circuit.c b/hacks/glx/circuit.c index da3be770..b59b470b 100644 --- a/hacks/glx/circuit.c +++ b/hacks/glx/circuit.c @@ -2018,6 +2018,7 @@ static void display(ModeInfo *mi) glEnable(GL_LIGHTING); glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glLoadIdentity(); + glRotatef(current_device_rotation(), 0, 0, 1); gluLookAt(ci->viewer[0], ci->viewer[1], ci->viewer[2], 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); @@ -2069,11 +2070,11 @@ static TexNum * fonttexturealloc (ModeInfo *mi, const char *str, float *fg, float *bg) { Circuit *ci = &circuit[MI_SCREEN(mi)]; - int i, status; + int i; XImage *ximage; char *c; TexNum *t; - + GLuint mintex; if (ci->font_init == 0) { for (i = 0 ; i < 50 ; i++) { ci->font_strings[i] = NULL; @@ -2101,7 +2102,8 @@ static TexNum * fonttexturealloc (ModeInfo *mi, mi->xgwa.visual, font, str, fg, bg); - for (i = 0 ; ci->font_strings[i] != NULL ; i++) { /* set i to the next unused value */ + glGenTextures (1, &mintex); + for (i = mintex ; ci->font_strings[i] != NULL ; i++) { /* set i to the next unused value */ if (i > 49) { fprintf(stderr, "Texture cache full!\n"); free(ximage->data); @@ -2117,17 +2119,24 @@ static TexNum * fonttexturealloc (ModeInfo *mi, glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); clear_gl_error(); - status = gluBuild2DMipmaps(GL_TEXTURE_2D, 4, ximage->width, ximage->height, - GL_RGBA, GL_UNSIGNED_BYTE, ximage->data); - if (status) +#if 0 + i = gluBuild2DMipmaps(GL_TEXTURE_2D, 4, + ximage->width, ximage->height, + GL_RGBA, GL_UNSIGNED_BYTE, ximage->data); + if (i) { - const char *s = (char *) gluErrorString (status); + const char *s = (char *) gluErrorString (i); fprintf (stderr, "%s: error mipmapping %dx%d texture: %s\n", progname, ximage->width, ximage->height, (s ? s : "(unknown)")); - exit (1); + abort(); } check_gl_error("mipmapping"); +#else + glTexImage2D (GL_TEXTURE_2D, 0, GL_RGBA, ximage->width, ximage->height, 0, + GL_RGBA, GL_UNSIGNED_BYTE, ximage->data); + check_gl_error("texture"); +#endif t = malloc(sizeof(TexNum)); t->w = ximage->width;