[Mesa-dev] [Bug 61412] glCallLists/glBitmap calls slow on Intel implementation of Mesa drivers

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Feb 25 18:45:29 PST 2013


--- Comment #13 from Brian Paul <brianp at vmware.com> ---
(In reply to comment #11)
> We've tried really hard to help you, and all of your responses have been
> filled with rudeness and belligerence.

Ian, I don't think James is being unreasonable.  He's simply trying to use a
legacy OpenGL feature (that works fine with other drivers) and is frustrated
that nobody seems interested in helping him.  And simply saying "just forget
about glXUseXFonts and use textures" doesn't really help either, given the
other constraints that he described (and were probably glossed over by others).

James, I think I have a possible path to a solution for you.  The texture map
approach really is the best way to go, but you're probably wondering about how
to get your font glyphs without pulling in some new font utility/library, font
files, etc.

If you look at Mesa's src/mesa/drivers/x11/xfonts.c file you'll find an
implementation of glXUseXFont().  It uses some Xlib code to convert X font
glyphs into bitmap images.  I think you could adapt that code so that you'd
save the bitmap images in some data structure, then implement a simple bitmap
character renderer to render strings into a texture image (see also
src/mesa/state_trackers/st_cb_bitmap.c and the _mesa_expand_bitmap() function).
 Then render the texture/string with GL_ALPHA_TEST or blending.  I think you
could do all this in a few hundred lines of code (most of it from xfonts.c). 
Maybe there's even some code on the net that does this already.  Anyway, you
could build new code this with your other app sources and avoid any new
external dependencies.

Hope that helps.

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130226/b0af7b12/attachment-0001.html>

More information about the mesa-dev mailing list