[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [44011] trunk/blender/source: reverting commit [43876] Fix for aliased fonts in the game engine

Dalai Felinto dfelinto at gmail.com
Fri Feb 10 08:37:57 CET 2012


sorry, the commit went on before I had a chance to write the whole log.
(that what happens when using --message ;)

This commit introduced some issues in debug text and 'missing letters'
(which seems to me an ATI problem). The problem is presented here:

http://projects.blender.org/tracker/?func=detail&atid=127&aid=29882&group_id=9

It may be fixable, but we are so close to a release that we (Alex, me,
Mitchell) agreed that is better to pull it back, given that this introduces
a regression.

--
Dalai

2012/2/10 Campbell Barton <ideasman42 at gmail.com>

> whats wrong with this commit?
>
> On Fri, Feb 10, 2012 at 5:18 PM, Dalai Felinto <dfelinto at gmail.com> wrote:
> > Revision: 44011
> >
> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44011
> > Author:   dfelinto
> > Date:     2012-02-10 06:18:32 +0000 (Fri, 10 Feb 2012)
> > Log Message:
> > -----------
> > reverting commit [43876] Fix for aliased fonts in the game engine
> >
> > Modified Paths:
> > --------------
> >    trunk/blender/source/blender/blenfont/BLF_api.h
> >    trunk/blender/source/blender/blenfont/intern/blf_glyph.c
> >    trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
> >    trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp
> >
> > Modified: trunk/blender/source/blender/blenfont/BLF_api.h
> > ===================================================================
> > --- trunk/blender/source/blender/blenfont/BLF_api.h     2012-02-10
> 06:16:21 UTC (rev 44010)
> > +++ trunk/blender/source/blender/blenfont/BLF_api.h     2012-02-10
> 06:18:32 UTC (rev 44011)
> > @@ -197,7 +197,6 @@
> >  #define BLF_KERNING_DEFAULT (1<<3)
> >  #define BLF_MATRIX (1<<4)
> >  #define BLF_ASPECT (1<<5)
> > -#define BLF_TEXFILTER (1<<6)
> >
> >  #define BLF_DRAW_STR_DUMMY_MAX 1024
> >
> >
> > Modified: trunk/blender/source/blender/blenfont/intern/blf_glyph.c
> > ===================================================================
> > --- trunk/blender/source/blender/blenfont/intern/blf_glyph.c
>  2012-02-10 06:16:21 UTC (rev 44010)
> > +++ trunk/blender/source/blender/blenfont/intern/blf_glyph.c
>  2012-02-10 06:18:32 UTC (rev 44011)
> > @@ -54,8 +54,6 @@
> >  #include "blf_internal_types.h"
> >  #include "blf_internal.h"
> >
> > -#define _BLF_PADDING 3
> > -#define _BLF_MIPMAP_LEVELS 3
> >
> >  GlyphCacheBLF *blf_glyph_cache_find(FontBLF *font, int size, int dpi)
> >  {
> > @@ -89,11 +87,7 @@
> >        gc->cur_tex= -1;
> >        gc->x_offs= 0;
> >        gc->y_offs= 0;
> > -       /* Increase padding for each mipmap level: 0->3, 1->4, 2->6,
> 3->10, ... */
> > -       if (font->flags & BLF_TEXFILTER)
> > -               gc->pad= pow(2, _BLF_MIPMAP_LEVELS) + 2;
> > -       else
> > -               gc->pad= _BLF_PADDING;
> > +       gc->pad= 3;
> >
> >        gc->num_glyphs= font->face->num_glyphs;
> >        gc->rem_glyphs= font->face->num_glyphs;
> > @@ -302,17 +296,13 @@
> >
> >  static void blf_texture_draw(float uv[2][2], float dx, float y1, float
> dx1, float y2)
> >  {
> > -       /* When a string is being rendered as individual glyphs (as in
> the game
> > -        * engine), the leading edge needs to be raised a fraction to
> prevent
> > -        * z-fighting for kerned characters. - z0r */
> > -       const float twist = (dx1 - dx) * 0.0002f;
> > -
> > +
> >        glBegin(GL_QUADS);
> >        glTexCoord2f(uv[0][0], uv[0][1]);
> > -       glVertex3f(dx, y1, twist);
> > +       glVertex2f(dx, y1);
> >
> >        glTexCoord2f(uv[0][0], uv[1][1]);
> > -       glVertex3f(dx, y2, twist);
> > +       glVertex2f(dx, y2);
> >
> >        glTexCoord2f(uv[1][0], uv[1][1]);
> >        glVertex2f(dx1, y2);
> > @@ -415,15 +405,6 @@
> >
> >                glBindTexture(GL_TEXTURE_2D, g->tex);
> >                glTexSubImage2D(GL_TEXTURE_2D, 0, g->xoff, g->yoff,
> g->width, g->height, GL_ALPHA, GL_UNSIGNED_BYTE, g->bitmap);
> > -               if (font->flags & BLF_TEXFILTER) {
> > -                       glTexParameteri(GL_TEXTURE_2D,
> GL_TEXTURE_BASE_LEVEL, 0);
> > -                       glTexParameteri(GL_TEXTURE_2D,
> GL_TEXTURE_MAX_LEVEL,
> > -                                       _BLF_MIPMAP_LEVELS);
> > -                       glGenerateMipmap(GL_TEXTURE_2D);
> > -                       glTexParameteri(GL_TEXTURE_2D,
> GL_TEXTURE_MAG_FILTER, GL_LINEAR);
> > -                       glTexParameteri(GL_TEXTURE_2D,
> GL_TEXTURE_MIN_FILTER,
> > -                                       GL_LINEAR_MIPMAP_LINEAR);
> > -               }
> >                glPopClientAttrib();
> >
> >                g->uv[0][0]= ((float)g->xoff) / ((float)gc->p2_width);
> >
> > Modified:
> trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
> > ===================================================================
> > --- trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
>  2012-02-10 06:16:21 UTC (rev 44010)
> > +++ trunk/blender/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp
>  2012-02-10 06:18:32 UTC (rev 44011)
> > @@ -136,8 +136,8 @@
> >        /* the actual drawing */
> >        glColor4fv(color);
> >
> > -       BLF_enable(fontid, BLF_MATRIX|BLF_ASPECT|BLF_TEXFILTER);
> >        /* multiply the text matrix by the object matrix */
> > +       BLF_enable(fontid, BLF_MATRIX|BLF_ASPECT);
> >        BLF_matrix(fontid, mat);
> >
> >        /* aspect is the inverse scale that allows you to increase */
> > @@ -149,7 +149,7 @@
> >        BLF_position(fontid, 0, 0, 0);
> >        BLF_draw(fontid, (char *)text, 65535);
> >
> > -       BLF_disable(fontid, BLF_MATRIX|BLF_ASPECT|BLF_TEXFILTER);
> > +       BLF_disable(fontid, BLF_MATRIX|BLF_ASPECT);
> >  }
> >
> >  void BL_print_gamedebug_line(const char* text, int xco, int yco, int
> width, int height)
> >
> > Modified:
> trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp
> > ===================================================================
> > ---
> trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp
> 2012-02-10 06:16:21 UTC (rev 44010)
> > +++
> trunk/blender/source/gameengine/GamePlayer/common/GPC_RenderTools.cpp
> 2012-02-10 06:18:32 UTC (rev 44011)
> > @@ -294,8 +294,8 @@
> >        /* the actual drawing */
> >        glColor4fv(color);
> >
> > -       BLF_enable(fontid, BLF_MATRIX|BLF_ASPECT|BLF_TEXFILTER);
> >        /* multiply the text matrix by the object matrix */
> > +       BLF_enable(fontid, BLF_MATRIX|BLF_ASPECT);
> >        BLF_matrix(fontid, mat);
> >
> >        /* aspect is the inverse scale that allows you to increase */
> > @@ -307,7 +307,7 @@
> >        BLF_position(fontid, 0, 0, 0);
> >        BLF_draw(fontid, text, 65535);
> >
> > -       BLF_disable(fontid, BLF_MATRIX|BLF_ASPECT|BLF_TEXFILTER);
> > +       BLF_disable(fontid, BLF_MATRIX|BLF_ASPECT);
> >        glEnable(GL_DEPTH_TEST);
> >  }
> >
> >
> > _______________________________________________
> > Bf-blender-cvs mailing list
> > Bf-blender-cvs at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>
>
>
> --
> - Campbell
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>


More information about the Bf-committers mailing list