Font Discussions

A discussion area for general design issues that staff would like detailed feedback on.

Moderator: Staff

User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Thu Jan 14, 2010 4:49 am

I think we need to make some decisions about our set of font properties and not just our fonts. This gets a bit technical to explain how Allacrost uses fonts, but I'll try to keep it as simple as I can.

1) Whenever Allacrost loads a font (a .ttf file), we must also declare the size of the font to load. Just because we have previously loaded in "myfont.ttf" in 20pt before does not mean we can use the same font to render text in 24pt, 16pt, or any other size. To do that, we'd have to load the font again. Each combination of font + size takes a certain amount of graphics memory because the graphics engine stores all the rendered characters of that font while it is loaded.

2) In addition to the font + size combo, we have something called TextStyles. A text style encompasses the font+size combo that the style should be applied to, the color the text should be rendered in, and the text shadow type + offsets. Styles consume virtually no memory so we can have as many of them as we please.

3) The graphics engine keeps track of both a default font and a default text style. This default can be set to any loaded font/style.


What I think we need to decide on here is a set of font sizes. We don't want to render some text in Libertine 24pt, some in 25pt, some in 17pt, some in 48pt, etc. We should try to come up with a base range of sizes for both of our fonts: Libertine (used for text) and Libertine Capitals (used for titles and menus). Currently the game uses the following font sizes: 18, 20, 22, and 24. My current shop mode drafts are using text in sizes: 20, 22, 24, and 26. I think this is a good number of text sizes to use. We may want to consider a wider delta for the sizes though, like 3 or 4. For example: 20, 23, 26, 29 -or- 16, 20, 24, 28. We may need to see what the different rendered sizes look like first in to make an informed decision about this.

I think we should also name our font + size combos to reflect the usage and size (in the code, we use simple strings to refer to our different loaded fonts). Right now we have confusing and very specific names like "map, battle, battle_dmg, title". How about instead we use the following names:

text20, text22, text24, text26; title20, title22, title24, title26

"text" would use the standard Libertine font and the appended number indicates its size, while "title" is the Libertine Capitals font used for titles and menu options in the game. This makes their usage pretty universal and its clear what each font represents.
Image
rujasu
Developer
Posts: 758
Joined: Sun Feb 25, 2007 5:40 am
Location: Maryland, USA

Re: Font Discussions

Postby rujasu » Thu Jan 14, 2010 5:36 am

Like you said, it's hard to make a decision about the delta without seeing it. It sounds like 2 is a little small, 4 is a little big, maybe 3 is the right amount, but then again I don't know how well an odd number works with the font sizes for Libertine. I agree with the naming scheme.
User avatar
gorzuate
Developer
Posts: 2575
Joined: Thu Jun 17, 2004 3:03 am
Location: Hermosa Beach, CA
Contact:

Re: Font Discussions

Postby gorzuate » Thu Jan 14, 2010 7:56 am

Yeah, that's a good naming scheme. It's almost like duh, how come we didn't think of that before? :heh: Simple and intuitive.
Image
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Thu Jan 14, 2010 2:07 pm

Glad we agree on the naming scheme. Here's a draft I put together that compares different font + size ranges.

Image


I started each font size at 20 minus delta (so 18, 17, and 16) and did 5 more delta increases to give us a view of 6 total sizes for both our text and title text fonts. The 2p, 3p, 4p stand for the delta size (e.g. 3 pixels) in that column. We need to not only choose our delta, but choose how many sizes of a given font we'd like to have available. For example if we choose a delta of 3, we may choose to have 5 sizes of 20, 23, 26, 29, and 32. For both fonts that means we'd have 10 glyph sets cached in graphics memory. (BTW, I'm going to start referring to the combination of font + size as a "font set" from now on).


There are some things to keep in mind as we make this decision.

1) Whatever we choose here does not mean those are the only fonts we can ever use. If a special situation demands it, any code in the game can load any custom font + size combo that they require to use. Hopefully however, the font + sizes we select here will account for the overwhelming majority of our text needs, if not 100% of those needs.

2) The more font sets we choose, the more graphics memory it consumes. The less font sets we choose, the fewer choices are available to our programmers in the game when deciding on the appropriate font set to use. There's a clear trade-off here and we don't want to have too many or too few font sets available.

3) We can choose different sizes and deltas for regular text and title text. We may want to consider doing so, since title text is used in titles (which naturally we make larger than surrounding text). Title text is also used in certain menus as well, for instance the different actions one can take in menu mode or shop mode are in title text.

4) Try to consider all the cases in which text will be used, not just the obvious ones. For example, damage numbers popping up in battle mode.


Here are my thoughts after looking at this closely.

A) I think that 18pt font is the absolute minimum size we should consider using in the game. Anything below that just looks too small. So that eliminates four font sets.

B) Likewise, anything above 32pt seems too big to me. There's a couple more eliminations.

C) I think a delta of 2pt is not large enough. Too many consecutive font sets look too similar in size that you wouldn't want to use, say, 20pt alongside 22pt in the game anywhere. I think 2pt is out.

D) 3pt is better but still seems not enough to me, especially for title text. I'm considering 4pt delta for now.

E) I feel like having a total of eight sets is a good trade off between choice and memory consumption. I could be tempted to increase it to ten sets, but certainly I'm not willing to go less than eight or more than ten.


If I had to make a decision right now without being able to hear anyone else's thoughts, I think I'd go with the following.

Text: 3pt delta and 4 sets. Sizes: 20, 23, 26, 29

Title: 4pt delta and 4 sets. Sizes: 20, 24, 28, 32


I feel pretty good about my selection for titles, but less so for text. I think this could also be a good choice for text:

Text (v2): 4pth delta and 4 sets. Sizes: 18, 22, 26, 30
Image
rujasu
Developer
Posts: 758
Joined: Sun Feb 25, 2007 5:40 am
Location: Maryland, USA

Re: Font Discussions

Postby rujasu » Thu Jan 14, 2010 7:01 pm

For titles: your suggestion sounds good.
Regular text: is 18 or 20 point the smallest we would use? I'm not so sure, those seem like largeish font sizes.
Damage numbers: This is one spot where I think a smaller sans-serif font (perhaps a fixed-width one) might be best; not sure if Libertine is the best look here. OTOH, I wouldn't want to include a new font if we weren't using it somewhere else as well.
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Thu Jan 14, 2010 7:22 pm

rujasu wrote:Regular text: is 18 or 20 point the smallest we would use? I'm not so sure, those seem like largeish font sizes.
Damage numbers: This is one spot where I think a smaller sans-serif font (perhaps a fixed-width one) might be best; not sure if Libertine is the best look here. OTOH, I wouldn't want to include a new font if we weren't using it somewhere else as well.


18 pt is the smallest the game uses right now, and that's only for the battle damage numbers. All English text is size 20 or above. We're not planning on displaying a novel on screen or anything and we don't want users to have to squint or have their face 6 inches from their monitor in order to read the text. I say we err on the side of being too large rather than too small.

I can see good reason that we might want to add a specific font for numerics only. But lets just stick with these two fonts for now and if we later decide to add another font, it won't be difficult to do.
Image
rujasu
Developer
Posts: 758
Joined: Sun Feb 25, 2007 5:40 am
Location: Maryland, USA

Re: Font Discussions

Postby rujasu » Thu Jan 14, 2010 9:43 pm

Okay, if 18 is what we currently use for the damage text, then definitely don't go any lower than that. I wasn't sure what sizes we were actually using in the current codebase.

And I think delta=4 may work best. If we have different-sized fonts on the screen, I'd prefer they be noticeably different.
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Fri Jan 15, 2010 4:12 am

rujasu and I chatted online tonight and we agree on the following font sets.

Standard text: 18, 22, 26, 30
Title text: 20, 24, 28, 32

Both with a delta of 4px. No matter which standard text you choose, there will always be a larger size title text available to complement it if needed. If gorzuate or anyone else have other preferences, let them be known. I want to firmly commit ourselves to whatever font sets we ultimately decide upon soon as I'm already using them in the shop code I'm writing at the moment and I don't wish to change them. I also want to start going through the rest of the code and using these new font sets and removing the old ones that we used.

We also have to decide on a default font set. I vote for standard text 22pt.
Image
User avatar
gorzuate
Developer
Posts: 2575
Joined: Thu Jun 17, 2004 3:03 am
Location: Hermosa Beach, CA
Contact:

Re: Font Discussions

Postby gorzuate » Fri Jan 15, 2010 6:49 pm

That's fine. 22pt seems big for the default, but maybe that's a good thing (no squinting).
Image
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Tue Jan 19, 2010 3:59 am

I'm dissenting. :angry: I don't like the scheme we decided on after all, now that I've had some time trying to work with it. My principal complaints are as follows.

1) I haven't found a single use for the larger fonts and I can't think of any mode that would need to use it either. The largest I currently use is title28 for the active interface name in shop mode, and that's it. Everything else is size 24 or below. Most of the text is size 22.

2) Cramming in text is a pain in the ass, especially longer lines of text. Again and again I'm having trouble with text22 being too large and text18 being too small. Right now my strategy is to stick with the more readable text22 and hope that we don't make a string that gets too long (I'm especially worried about object descriptions and lore text, which can be lengthy). Take a look at the font size comparison draft image again, a few posts above. I know that Text20 and Text22 might not seem that different, but its actually huge. "2p: Text20" is a 9-character string, and look at how much less horizontal space Text20 takes up from Text22. Oh I so crave that space.....


Therefore, I would like to formally request the following change to our font sets.

Standard text: 18, 20, 22, 24
Title text: 20, 22, 24, 28

i omitted title26 on purpose because i don't think it would ever get used. I like title28 for big important headers/titles and I think its a great maximum size. I'm tempted to try title 22, 24, 26, 28 but I'm worried that for menus there might not be a small enough font with 22 at our minimum. But the standard text sizes I feel firm about. What do you guys think?
Image
rujasu
Developer
Posts: 758
Joined: Sun Feb 25, 2007 5:40 am
Location: Maryland, USA

Re: Font Discussions

Postby rujasu » Tue Jan 19, 2010 4:19 am

Sure, go ahead. Sounds reasonable.
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Tue Jan 26, 2010 5:07 pm

I've since made the changes and they've been working out great. But now I'm questioning the title20 font. Recall that title text is used for titles, headers, and selectable option text. I had tried using the title20 font in some options in the shop mode confirm interface and the text looked so small and puny, I hated it. I'm also finding a situation in the same interface where I wish I had a title font larger than 24 yet smaller than 28. So I'm considering removing title20 and replacing it with title26. That would also keep the title font size ranges consistent (22, 24, 26, 28).

I'm going to hold off on this though until I have a chance to take a look at battle mode, because that code has more strict requirements on screen/menu real estate and it may have a strong need for title20. But if I find the existing title sets (22 and up) work fine for battle mode's needs, then I think I'll go ahead and make the swap.
Image
User avatar
Roots
Dictator
Posts: 8662
Joined: Wed Jun 16, 2004 6:07 pm
Location: Austin TX
Contact:

Re: Font Discussions

Postby Roots » Tue Feb 09, 2010 1:54 am

rujasu and I were discussing tonight about possibly adding another font just for numeric text like HP indicators and damage text. I would probably look better than either our current title/text font because those numbers are thin. We were thinking perhaps something a bit wider and cartoon-ish like the HP/SP numeric text in this image.

Image

Just a thought for the future. We have less pressing matters to worry about for now.
Image

Return to “Design”

Who is online

Users browsing this forum: No registered users and 2 guests