I think it’s clear what he means regardless of term used since he’s specifically talking about generating glyphs of different sizes at runtime (a font) from his single TTF (TrueType Font which actually contains a typefact, confusing, eh?)
Basically, if you are using old blocks of letters to make physical prints then you should worry about what a typeface versus a font. Else… it probably doesn’t matter.
It’s often tough to tell when people on a public forum also have a history communicating offline, so I’d just like to say that for the record: @thetoucher is one of my very favorite people here. No joke. I think the forum is way less interesting when he’s on hiatus.
Contrary to his claim that I’m always right, we’ve had many many a late night (for me) chat where he asks me some question, I provide an off-the-cuff answer, and he then proceeds to producing mounting evidence that I had no idea what I was talking about. “I’m not saying your wrong… but can you explain these results I’m seeing that show you’re wrong…”
Meanwhile his images are looking better and better because he somehow plowed past my advice anyway.
I suppose one could use the term typeface or font for what I’m working on. Never gave much thought to it myself, but based on pspeed’s link font might be a better fit.
“Open up Microsoft Word and you’re asked to choose a font, not a typeface. From the perspective of Microsoft’s designers, this makes perfect sense. At any given time, after all, you’re working in a specific size and weight of a typeface. This is the proper term.”
In this case the TrueTypeKey, the AssetKey for the font loader, is specific for each size and weight. You would have one key for bold 12 point serif, another for italic 12 point serif and another for plain 20 point serif so each instance of the font class represents a single font rather than an entire typeface.
This is based on java.awt.Font in which a different instance is required for each size and style.
P.S. Thanks for bringing it up actually, I actually didn’t know the difference between typeface and font and it’s good to know. I’ve learned a good deal about fonts recently heh. Creating an atlas isn’t as cut and dry as I thought it would be. For instance, obviously, some characters extend below the baseline and java gives you a descent variable that’s supposed to tell you how far, but according to the docs some characters extend below even that value and into the next line. Others might extend beyond their Xadvance into the next character etc…
So I am discovering. Occasionally I consider writing my own TTF parser, but I’m pretty sure I don’t want to delve that far into it. The awt font stuff seems a little buggy at times. Using getDescent gave me a value of six for every single character which is quite useless.
I do that in the mesh generator. Java.awt also has a logical bounds method which is useful because it gives me the bounds of the area the shape should appear in which is different from the bounds of the shape. A ^ for instance has a larger logical bound than visual bound because it’s displayed above the baseline rather than on the baseline. In some fonts it is also displayed beyond the xadvance encroaching on the next character.
So in the atlas I can’t simply render the character as is because it ends up being displayed in the next character block, I have to modify its position by the amount it extends above, below, left or right of its origin then restore that offset when creating the quad mesh.
I’m going to add a fog filter later when I make the map bigger. At this point, you can clearly see the borders are too small ;).
The SkyControl is a plugin created by @sgold that simulates day/night cycles and has a beautiful skybox with generated (I think) clouds. I thought this project was dead, because, as most of you may now, googlecode has shut down, and the author didn’t port the project to github. However, you’re lucky because sgold is “back on track”, and the SkyControl was ported to Github
Actually you are right ;), I should be able to use the shape bounds to determine the shape’s offset from the origin. Looking forward to trying that out tomorrow, now it’s bed time. Dunno why everyone’s still awake here get some sleep! Maybe you all live on the other side of the planet, 04:30 here.
I tend to keep odd hours myself. Supposed volunteer at the food pantry in several hours, we’ll see if I make it in, I’m pretty sure there’ll be more than enough volunteers tomorrow.
Is that an application that replaces old SDK?
In the node, by clicking ‘stop all’ you stops every single controller under that node or you disable it inside the node? I’m not familiar with 3.1
This is basically the 3.1 SDK. I just added this functionality.
If you click stop all it’ll simply pass it on to all childs until it eventually hits a control which is stopped then.