0 Favourites

Sprite Font Frustrations

  • I really appreciate the Sprite Font, and I understand that it was created by a 3rd party for Scirra, but does anyone else wish that it was a little easier to use?

    I'm not sure about the difficulties, etc in producing font tools, but does anyone know if the text tool in Photoshop, for example, is effectively a sprite font tool? If so, why are they so different?

    My first time using the Sprite Font tool

    I select the tool, and add it to the layout. I then realise that I can't just pick a font from my font bank, and have to actually create a font sprite. I search around, and eventually find this great little program.

    I then load up the program, choose the font I want to use, fiddle with the height and width, finally get a result I'm pretty much happy with, export the sprite font, import it into Construct 2, find there's something not quite right with it, switch back to the generator and try again.

    Once I finally get it the way I want it to look, I start adding it to the game. I then start typing out words, and the spacing is completely messed up. I then have to tweak the properties for the sprite font, and match it to the sprite font generator settings. Once this is done, I notice that the spacing between thin letters and wide letters are the same, and not automatically set up based on character width. I then have to set up an event that selects the characters and sets their spacing. This involves a lot of trial and error, and I even end up missing a few characters, and have to add them in.

    A few more minutes of tweaking, and I'm finally done. I then want to have a different font for a different section, and I have to repeat the entire process again.

    My first time using the text tool in something like Photoshop

    Click text icon, choose font, choose size, start typing... done.

    I used Multimedia Fusion 2, and I seem to recall this being a simple process as well. I don't remember having to set spacing, etc., or even import a font sprite.

    I don't mean any disrespect toward the programmer for this tool. Far from it. It was repeatedly asked for, and was finally supplied. My problem is that I will only ever use it for numbers, and even then I find it a bit of a hassle. I tend to just create sprites of all the text I want, and import them into my game.

    I know it ends up using up more space in my game, but I just find it a lot easier, and a lot faster. However, it's more hassle if I just want to change a word, or I spell something wrong.

    Does anyone else have any other comments on this? Am I simply using the tool incorrectly, or does anyone else feel the same?

  • The link to blackhornets' application for spacing is what I use! When you are using that application and save, it creates a .txt and .xml file, which aid in giving you the easiest route to doing the individual character spacing in Construct 2, by either following the .txt and manually adding events, or importing the .xml file (I do the manual method).

    Everything works pretty fine for me really! It takes a bit of fiddling around if you wanted to add effects to your font before you import it (like glow effects) as it leaks onto other characters, but it's all pretty straightforwards after you figure it out once. I've managed to get neat looking spritefonts without too much hassle!

  • Jase00

    That was just a review of my first use. I can do it faster now, but it's still not what I would consider 'fast'.

    How long does it take you from scratch, do you think?

  • Sounds like the problem is with your bitmap fonts, man. Usually each character is the same size.

  • MadFactory

    You think an l is the same width as a W? Maybe with web font, but generally not sprite font. This is Arial, very common font.

    <img src="http://img703.imageshack.us/img703/7352/xqia.jpg" border="0" />

  • Construct 3

    Buy Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Buy Now Construct 3 users don't see these ads
  • And these are bitmap fonts. They are to be used like tilesets. Again - every character is the same size. No problems.

  • MadFactory

    They don't appear to be the same size to me. They're in an effective grid which is the same size, but that just means there are larger gaps either side of the characters.

    Look at "Anikki"

    The I looks thinner. Surely if you were to use the C2 Sprite Font editor and type in the word "Illuminated" and "ILLUMINATED".

    If you do the same word in Photoshop, the gap is constant throughout.

  • The widths are set in the events. If you don't use "Give your fonts mono" by BlackHornet, then you have to do it yourself. My tutorial attempts to explain it.

  • Paradox

    Thanks, it's great that there is a tutorial, but my post isn't asking how to use it, is effectively asking why there is a need for a tutorial. Is the sprite font tool as easy as it can be?

    Why can't it automatically trim down to each character size and then add 1 or 2 pixels to the width? As default. This would allow you to tweak from there if you want different effects, rather than be force to tweak every time. I even find it odd that we have to use a 3rd party program just to use Arial font.

    My point is, why is it so different and have so many steps compared to the text tool in photoshop, illustrator, gimp, paint.Net, Multimedia Fusion 2, etc.

    I'd rather it be just as simple to use as the standard text tool.

    Am I the only one?

  • No AnD4D, you are not. I have used the spritefont and had similar results and struggles, even though I followed Paradox's excellent guide. Now sprifont is something I want to do last, because of the hassle it includes which makes it boring. It's not like you are achieving something tangible by solving this problem, you are just making it "normal".

    Thus I agree sprifont tool may need an uplift, but I also think there are many other areas that would be better improved with higher priority, like export's, localized obstacle recalculation for pathfinding, improving tilemap editor etc.

  • Spritefonts are primarily just mono spaced fonts (aka all the same width) although it is cool you can get it working with variable width fonts as well. For the case you cited of using the Arial font why not just use the text object? It's use is basically the same as adding text in photoshop or any other program you mentioned.

  • R0J0hound - in addition to wanting to achieve a certain look to a font, in my game I discovered the normal text object actually causes a significant fps hit on my computer when changing the layout scale. When I switched over to sprite text, the fps remained smooth.

    I wonder if it would be easier to use if we could import an image with a grid of characters, and after setting the size of the grid C2 could automatically split it in to separate animation frames, crop the images and set the hotspots. Then we would get it automatically adjusting for variable width fonts, and it would make a sprite sheet automatically for them on export the same way it does for everything else, but we would still have the ability to tweak it.

  • I wonder if it would be easier to use if we could import an image with a grid of characters, and after setting the size of the grid C2 could automatically split it in to separate animation frames, crop the images and set the hotspots. Then we would get it automatically adjusting for variable width fonts, and it would make a sprite sheet automatically for them on export the same way it does for everything else, but we would still have the ability to tweak it.

    +1 for this! I don't mean to sound unappreciative. I'm happy we have this tool, but just like Windwalker said, I also leave these things until the last minute. Which is a shame.

    I could use the standard text tool, but I'd like things like outlines, drop shadows :( So I have to use the Sprite Font if I want things to look right, that, or I just use the text tool in photoshop combined with the sprite tool.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)