Game Development Community

dev|Pro Game Development Curriculum

Torque MIT 2D Update

by Paul Jan · 03/12/2013 (10:13 pm) · 3 comments

Its been a good couple of weeks.

Pull Request sent: feature/bmFont
Support for bmGlyph/bmFont bitmap fonts

I'm a complete font horder, and torque's font system has always annoyed me. This change causes torque to look for .fnt files in the font cache and load them instead of the old system if it finds them.
img22.imageshack.us/img22/1733/bmfontss1.png
In the above screenshot, I made a couple of fonts with blambot's Perihelion font give torque2d a more sci-fi look. Unzipping the font files below into /modules/AppCore/1/fonts/ will override the existing fonts. Not how you should do things in an actual project, but enough to show how things work.
Demo Fonts

Needs testing on windows platform: feature/zwoptex
A Mac based alternative to TexturePacker. It's just what I've been using.
Just add a ZwotexFile=filename.plist to the ImageAsset.

Pull Request sent: feature/GLKit-math
Moving the math library closer to Torque3d, and using GLKit's optimized math functions.
mLerp!

On the workbench: feature/GFX
Tearing out the old dgl fixed function pipeline to something that isn't 10 years old.
On the Mac in OpenGL 3.2 its working... -ish.
img826.imageshack.us/img826/2493/gfxwip1.png
As you can see, there's still a lot of issues to be worked out.

#1
03/13/2013 (6:17 am)
@Paul - Wow! You've been busy. I have some questions for you.

1. Do any of your changes break feature parity between platforms?
2. Is your GFX work a direct rip from T3D?
3. Do you see a future conflict if Freetype were implemented into T2D?

Also, I just pushed a change to the development branch. I added instructions that will allow you to export an ImageAsset directly from Zwoptex, rather than processing it in T2D. This is similar to what we did for TexturePacker.
#2
03/13/2013 (1:29 pm)
Feature parity shouldn't be broken. The GLKit math functions optimize existing functions, and the new functions added were taken from T3D.

I don't see Freetype implementation being a conflict. The bmFont loader parses the .fnt xml file to build a gFont in the same way as a .uft, the main difference being the image data is in a separate png file rather than being incorporated into the uft.

GFX started out as a rip from T3D and TGEA, with an eye to porting over as few files as possible. The GFXDevice base class went into graphics where dgl was, while the subclasses sit in a graphics directory under platform*.
#3
03/16/2013 (4:53 am)
@Paul - Your work with GFX might be crucial to getting T2D running in another application, like Qt. Check out my latest blog to see what the problems are.

Have you checked out my Zwoptex changes yet? Does this meet the requirement without having to change source, like you did?