From: Derek Foreman Date: Thu, 29 May 2003 23:48:32 +0000 (+0000) Subject: alpha and blending used for proper anti-aliasing against any background X-Git-Tag: gl2~20 X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=68333e6f894c32e409815b2fc698157ddd3d67d5;p=dana%2Fopenbox.git alpha and blending used for proper anti-aliasing against any background --- diff --git a/glft/render.c b/glft/render.c index 153437b2..5e732307 100644 --- a/glft/render.c +++ b/glft/render.c @@ -42,9 +42,9 @@ void GlftRenderGlyph(FT_Face face, struct GlftGlyph *g) glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, g->padx, g->pady, - 0, GL_GREEN, GL_UNSIGNED_BYTE, padbuf); + glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE); + glTexImage2D(GL_TEXTURE_2D, 0, GL_ALPHA, g->padx, g->pady, + 0, GL_ALPHA, GL_UNSIGNED_BYTE, padbuf); g_free(padbuf); } @@ -68,8 +68,9 @@ void GlftRenderString(struct GlftFont *font, const char *str, int bytes, if (g) { glTranslatef(GlftFontAdvance(font, p, g), 0.0, 0.0); glBindTexture(GL_TEXTURE_2D, g->tnum); + glBegin(GL_QUADS); - glColor3f(1.0, 1.0, 1.0); + glColor3f(1.0, 1.0, 0.0); glTexCoord2f(0, g->texh/(float)g->pady); glVertex2i(g->left, 0 - g->yoff); diff --git a/glft/test.c b/glft/test.c index e889baa2..38e67170 100644 --- a/glft/test.c +++ b/glft/test.c @@ -86,6 +86,9 @@ int main(int argc, char **argv) glOrtho(-50, W-50, -100, H-100, 0, 10); glMatrixMode(GL_MODELVIEW); glEnable(GL_TEXTURE_2D); + glClearColor(0.0, 0.0, 1.0, 0.0); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + glEnable(GL_BLEND); quit = 0; while (!quit) { XNextEvent(display, &report);