Hi On Wed, Mar 28, 2012 at 8:14 PM, Ville Syrj?l? <ville.syrjala at linux.intel.com> wrote: > On Wed, Mar 28, 2012 at 10:30:20AM -0700, Jesse Barnes wrote: >> On Tue, 27 Mar 2012 16:57:29 +0200 >> David Herrmann <dh.herrmann at googlemail.com> wrote: >> >> > Hi >> > >> > Motivated by Jesse's letter to the lazyweb [1] I worked on a kmscon >> > program. It provides a >> > terminal-emulator similar to the in-kernel terminal-emulator based on >> > DRM. It is written >> > from scratch and needs as external dependencies only mesa (libdrm, >> > libgbm, libEGL, libGLESv2), >> > udev, xproto (build-time dep), libxkbcommon, freetype2 and currently >> > glib (only for unicode support). >> > It uses a very recent version of libxkbcommon but it should be easy to >> > fix ./src/kbd_xkb.c if >> > you use an older version (or use --disable-xkbcommon to use a very >> > basic keyboard handler). >> >> Awesome! ?Now get the distros to pick this up and turn off CONFIG_VT! :) >> >> Ville's comment about a texture atlas is a good one, if nothing else I >> think it should improve cache behavior. > > You could also render a large batch of glyphs with just a single > glDrawElements()/glDrawArrays() call. Looks like the current code > does a glDrawArrays() for each glyph.
I switched to cairo again and this works much better than my first attempt with freetype+GL (even with higher row/cols counts). I also switched to pango so I don't have to care for unicode combined-chacraters which are not supported by freetype2 out-of-the box and need to be emulated. I might, though, give freetype+OpenGL another try with your approach to draw all glyphs with one glDrawArrays() call. However, I now wanna concentrate on the VTE layer for now. > -- > Ville Syrj?l? > Intel OTC Thanks looking over it! David