Support the font texture compression in texture profiles (DEF-1915)


#1

I guess this is a small feature request from chinese game only. :smiley:, or I just want to know the fessibility more than a feature request.

Background
After using fast conpression with webp lossy, the game size is reduced to 12%(from 150MB to 18MB) of the origin size and the image quality is still acceptable for mobile game. It’s really a great compression performance.

Now the chinese font is the biggest component with a big share(7MB/18MB) in the application size.
image

  • TYPE_BITMAP converts the imported OTF or TTF file into a font sheet texture where the bitmap data is used to render text nodes. The color channels are used to encode the face shape, outline and drop shadow. For .fnt files, the source texture bitmap is used as is.

If font is also a texture, is it possible to support it in texture profile like .png/.atlas? Thanks


#2

Hmm, yes, I believe we have discussed applying texture profiles to the font bitmap as well. Am I right @sven. @jhonny.goransson, what’s your thought on this?


#3

Yeah it would be nice :slight_smile:

The glyph data is stored in a sequential binary array so I guess we would need to store the glyphs as either smaller individual textures, or as a large cache-ish texture (or perhaps even as a collection of mid-sized individual textures depending on how large the output texture becomes), and then apply the compression to the texture set and subsequent decode on the client side. Though, I’m not sure how everything fits together with the texture profiles in the engine side yet so maybe Sven has some more input on it.