Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: KeldorKatarn on June 03, 2009, 07:15:22 pm
-
Has anyone a windows binary of this one that actually works?
The only one I found as a link in these forums crashes right after direct3d initialization when trying to edit kerning data.
-
Did anyone successfully compile fonttool and get it working? Starting it up into the kerning editor works, but the program does not respond to my keyboard!
I'm using this one here: http://fs2source.warpcore.org/fonttool.exe
-
you can get it from red faction modder circles, but im not sure if its reverse compatable with fs (or if fs is forward compatable).
-
you can get it from red faction modder circles, but im not sure if its reverse compatable with fs (or if fs is forward compatable).
That would be fonttool2. I've tried using fonts that have been made with fonttool2, but they don't work with FS.
-
Did anyone successfully compile fonttool and get it working? Starting it up into the kerning editor works, but the program does not respond to my keyboard!
I tried, and I got the same problem. I ended up having to force-quit out of it.
The source code to fonttool is in the original source code release (http://fs2source.warpcore.org/freespace2_public_4_24_02.zip) if you want to try messing around with it.
-
Update: I tried editing a font that was created in the original fonttool with fonttool2 and saved it.
Usually if you make a font with fonttool2 and try to make FSO use it, the game will say "malloc failed!"
This time, it just crashed.
-
Do you have a debug log?
-
This is the debug log I get when I make FSO use a font made with the original fonttool and edited in fonttool2:
==========================================================================
DEBUG SPEW: No debug_filter.cfg found, so only general, error, and warning
categories can be shown and no debug_filter.cfg info will be saved.
==========================================================================
FreeSpace version: 3.6.11.1111
Passed cmdline options:
-spec_exp 7.0
-fov 0.65
-spec_static 3.0
-spec_point 8.6
-spec_tube 5.0
-ambient_factor 130
-mipmap
-missile_lighting
-glow
-spec
-normal
-3dshockwave
-post_process
-cache_bitmaps
-ballistic_gauge
-dualscanlines
-rearm_timer
-targetinfo
-3dwarp
-ship_choice_3d
-weapon_choice_3d
-warp_flash
-snd_preload
-mod pprocess,Landreich
-wcsaga
Building file index...
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_anims.vp' with a checksum of 0x20ede0b2
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_core.vp' with a checksum of 0x2c725bc9
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_effects.vp' with a checksum of 0xb0272d7b
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_hud.vp' with a checksum of 0x0a624b02
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_interface.vp' with a checksum of 0x17c4567c
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_music.vp' with a checksum of 0x244979b7
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_ships.vp' with a checksum of 0x4248ea63
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_sounds.vp' with a checksum of 0xda87e6ba
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_voice.vp' with a checksum of 0x3066cebf
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc3_demo.vp' with a checksum of 0xd5a282a0
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc4_campaign_0.23.vp' with a checksum of 0x16c4e490
Found root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc4_core_0.23.vp' with a checksum of 0x331bb657
Searching root 'C:\Program Files\Games\Wing Commander Saga Prologue\pprocess\' ... 40 files
Searching root 'C:\Program Files\Games\Wing Commander Saga Prologue\Landreich\' ... 1020 files
Searching root 'C:\Program Files\Games\Wing Commander Saga Prologue\' ... 84 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_anims.vp' ... 3 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_core.vp' ... 60 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_effects.vp' ... 245 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_hud.vp' ... 205 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_interface.vp' ... 1313 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_music.vp' ... 37 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_ships.vp' ... 1167 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_sounds.vp' ... 157 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\prologue_voice.vp' ... 685 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc3_demo.vp' ... 62 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc4_campaign_0.23.vp' ... 183 files
Searching root pack 'C:\Program Files\Games\Wing Commander Saga Prologue\wc4_core_0.23.vp' ... 340 files
Found 15 roots and 5601 files.
Setting language to English
TBM => Starting parse of 'difficulty-lcl.tbm' ...
Initializing OpenAL...
Using 'Generic Software' as OpenAL sound device...
OpenAL Vendor : Creative Labs Inc.
OpenAL Renderer : Software
OpenAL Version : 1.1
... OpenAL successfully initialized!
Failed to init speech
Initializing OpenGL graphics device at 1280x1024 with 32-bit color...
Initializing WGL...
Requested WGL Video values = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
Actual WGL Video values = R: 8, G: 8, B: 8, depth: 32, double-buffer: 1
OpenGL Vendor : NVIDIA Corporation
OpenGL Renderer : GeForce 9800 GT/PCI/SSE2
OpenGL Version : 3.1.0
Using extension "GL_EXT_fog_coord".
Using extension "GL_ARB_multitexture".
Using extension "GL_ARB_texture_env_add".
Using extension "GL_ARB_texture_compression".
Using extension "GL_EXT_texture_compression_s3tc".
Using extension "GL_EXT_texture_filter_anisotropic".
Using extension "GL_ARB_texture_env_combine".
Using extension "GL_EXT_compiled_vertex_array".
Using extension "GL_EXT_draw_range_elements".
Using extension "GL_ARB_texture_mirrored_repeat".
Using extension "GL_ARB_texture_non_power_of_two".
Using extension "GL_ARB_vertex_buffer_object".
Using extension "GL_ARB_pixel_buffer_object".
Using extension "GL_SGIS_generate_mipmap".
Using extension "GL_EXT_framebuffer_object".
Using extension "GL_ARB_texture_rectangle".
Using extension "GL_EXT_bgra".
Using extension "GL_ARB_texture_cube_map".
Using extension "GL_EXT_texture_lod_bias".
Using extension "GL_ARB_point_sprite".
Using extension "GL_ARB_shading_language_100".
Using extension "GL_ARB_shader_objects".
Using extension "GL_ARB_vertex_shader".
Using extension "GL_ARB_fragment_shader".
Using extension "GL_NV_vertex_program3".
Found special extension function "wglSwapIntervalEXT".
Initializing Shaders Manager...
Loading and compiling main shaders...
Compiling main shader -> main-v.sdr (null-v.sdr) / main-f.sdr (null-f.sdr) ...
Compiling main shader -> main-v.sdr (b-v.sdr) / main-f.sdr (b-f.sdr) ...
Compiling main shader -> main-v.sdr (b-v.sdr) / main-f.sdr (bg-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lb-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lbg-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lbgs-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lbs-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lbgn-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lbgsn-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lbn-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lbsn-f.sdr) ...
Compiling main shader -> main-v.sdr (lf-v.sdr) / main-f.sdr (lfb-f.sdr) ...
Compiling main shader -> main-v.sdr (lf-v.sdr) / main-f.sdr (lfbg-f.sdr) ...
Compiling main shader -> main-v.sdr (lf-v.sdr) / main-f.sdr (lfbgs-f.sdr) ...
Compiling main shader -> main-v.sdr (lf-v.sdr) / main-f.sdr (lfbs-f.sdr) ...
Compiling main shader -> main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbgn-f.sdr) ...
Compiling main shader -> main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbgsn-f.sdr) ...
Compiling main shader -> main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbn-f.sdr) ...
Compiling main shader -> main-v.sdr (lfn-v.sdr) / main-f.sdr (lfbsn-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (null-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lg-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (lgs-f.sdr) ...
Compiling main shader -> main-v.sdr (l-v.sdr) / main-f.sdr (ls-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lgn-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lgsn-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (ln-f.sdr) ...
Compiling main shader -> main-v.sdr (ln-v.sdr) / main-f.sdr (lsn-f.sdr) ...
Shaders Manager initialized.
Max texture units: 4 (32)
Max elements vertices: 1048576
Max elements indices: 1048576
Max texture size: 8192x8192
Can use compressed textures: YES
Texture compression available: YES
Using trilinear texture filter.
Using GLSL for model rendering.
Shader Version: 1.40 NVIDIA via Cg compiler
... OpenGL init is complete!
Size of bitmap info = 760 KB
Size of bitmap extra info = 52 bytes
ANI cursorweb with size 24x24 (25.0% wasted)
GRAPHICS: Initializing default colors...
SCRIPTING: Beginning initialization sequence...
SCRIPTING: Beginning Lua initialization...
LUA: Opening LUA state...
LUA: Initializing base Lua libraries...
LUA: Beginning ADE initialization
ADE: Initializing enumeration constants...
ADE: Assigning Lua session...
SCRIPTING: Beginning main hook parse sequence....
Wokka! Error opening file (scripting.tbl)!
TABLES: Unable to parse 'scripting.tbl'! Error code = 5.
SCRIPTING: Inititialization complete.
I get a Microsoft Visual C++ Debug Error (invalid allocation size) if I try to use a font made with fonttool2 on a debug build and a "Malloc failed!" on a release build. The debug log is the same.
Again, did anyone have any luck compiling fonttool from the icculus repo or the original source code release?
-
Again, did anyone have any luck compiling fonttool from the icculus repo or the original source code release?
The icculus.org version should still work under Linux at least (one of the first things that I worked on), but I don't think that it works under Windows.
-
fonttool.exe? What is this, I don't even?
-
It's the tool used to generate fonts in formats that the FS2 engine can use.
-
The icculus.org version should still work under Linux at least (one of the first things that I worked on), but I don't think that it works under Windows.
I was able to compile the Linux version, but I can't get it to load the background bitmap.
-
I was able to compile the Linux version, but I can't get it to load the background bitmap.
Copy the attached file to Data/Interface/, uncompress it, and that should fix the problem. The icculus.org version is case sensitive on those path names too, so be sure that the first letter is uppercase.
[attachment deleted by admin]
-
Thanks, taylor. I copied fonttool.pcx from src/fonttool/ into Data/Interface/ and it works.
-
If someone gets this to work under windows can he or she send me the binary and instructions on how to get it to work? would be helpful thanks :)
-
http://www.fs2downloads.com/Misc-Downloads/Fonttool.7z
That one worked a couple of years ago. No idea if it still does.
-
http://www.fs2downloads.com/Misc-Downloads/Fonttool.7z
That one worked a couple of years ago. No idea if it still does.
Unfortunately, this one also doesn't respond to the keyboard.
-
Unfortunately, this one also doesn't respond to the keyboard.
Yeah, that was a bug in the original code, it didn't poll for input updates. It was one of 2 or 3 non-Linux-specific things I fixed in the icculus.org code.
-
Doesn't work for me at all. Whenever I get the chance to look at the Debug Spew before it screws up the screen, then closes down, it keeps complaining about not being able to handle some monochrome driver or something.
Doesn't work.
-
I think WCS is the first mod to ever try to run fonttool under Windows. Very few people have even looked at the fonttool source code since Volition released it.
If you manage to get it working, I'm sure many other mods would appreciate it too. :)
-
Managed to get the fonttool working in Windows with the current FSO codebase. The kerning tool works and saves but I haven't tried importing a PCX file yet.
I'll post the source files and project files if we choose to integrate this into the SVN repo.
Extract it into your root FS2 folder. Fire it up through the command line interface.
http://www.megaupload.com/?d=1LN2DPMI
-
Could you please upload it somewhere else?
Megaupload keeps telling me that i've downloaded already several megabytes already and that i have to wait, although i didn't download anything there.
Thx in advance.
-
doesn't work for me. still crashes
-
doesn't work for me. still crashes
Need some more details. Were you trying to use the kerning editor or importing a PCX?
Also, be aware that the PCX file needs to be in 8-bit color.
-
Could you please upload it somewhere else?
Megaupload keeps telling me that i've downloaded already several megabytes already and that i have to wait, although i didn't download anything there.
Thx in advance.
You know, I think Megavideo, and that *other* Mega- site all count together I think :)
Edit: Mirrored @ Fonttool for Windows (http://swc.fs2downloads.com/files/Fonttool.zip)
-
Could you please upload it somewhere else?
Megaupload keeps telling me that i've downloaded already several megabytes already and that i have to wait, although i didn't download anything there.
Thx in advance.
You know, I think Megavideo, and that *other* Mega- site all count together I think :)
Can't be the reason. :)
And thx for the mirror.
-
Thanks for porting this to windows...
If I run Fonttool in it's own folder, it won't work at all.
Editing vf files and saving them works if I have Fonttool in my FS2 root directory or if I copy over sparky_fs2.vp.
It crashes when I try to create a font from a PCX file, regardless of whether it is in it's own folder or not.
For those curious, here's a sample font that should work with Fonttool if you convert it to PCX:
(http://www.ciinet.org/kevin/myimages/fssans.png)
EDIT: PCX Uploaded (http://www.ciinet.org/kevin/myimages/fssans.pcx)
-
Thanks for that sample font data. I did a few fixes and compiled a new build that fixes the crashing when importing a PCX file.
http://www.megaupload.com/?d=Y0WKV06J
As for why it only works when in your FS2 folder, it's because this build is based off of the FS Open codebase and uses gr_init and os_init to initialize the graphics and window. gr_init looks for various files native to FS2 retail.
-
I tried kerning. I don't care about converting a pcx into a vf font. That always worked with the tool. What never worked was the kerning because it can't load up the rendering engine for that.
If I try that with this version it crashes without any message just like any other version of it. So sorry I can't give you any more information.
-
Excellent work Swifty. :)
Does this run in windowed mode? If not, can you try doing that?
-
It exclusively works in windowed mode right now. I just set Cmdline_window to 1 before calling os_init and gr_init.
I tried kerning. I don't care about converting a pcx into a vf font. That always worked with the tool. What never worked was the kerning because it can't load up the rendering engine for that. If I try that with this version it crashes without any message just like any other version of it. So sorry I can't give you any more information.
Is FontTool.pcx in data/interface? Is the exe running in a directory that has sparky_fs2.vp?
-
Is FontTool.pcx in data/interface? Is the exe running in a directory that has sparky_fs2.vp?
What the heck is sparky_fs2.vp?
-
You know, the file that includes the hi-res interface art for FS2 retail, among other things? That is part of almost every install of FS2 I have ever seen?
-
Is FontTool.pcx in data/interface? Is the exe running in a directory that has sparky_fs2.vp?
What the heck is sparky_fs2.vp?
Win.
That is part of almost every install of FS2 I have ever seen?
Unless it's broken :P
-
Even the broken ones had it. Granted, not usable sometimes, but still....
-
OK. then I need to find someone with a FS2 installation.
You guys have considered that someone MIGHT be using FS_open without havin FS2 installed, right?
-
But not that someone would be developing for FS2_Open without the means to verify that their changes won't break with retail data, or that you would have such little knowledge about said data...
-
I've prepared a VP which should allow fonttool to run on it's own without having sparky_fs2.vp in the fonttool directory. Download it here (http://www.ciinet.org/kevin/myimages/fonttool.vp).
BTW Keldor, what version of DirectX do you have? I am thinking your problem is related to DirectX...
-
But not that someone would be developing for FS2_Open without the means to verify that their changes won't break with retail data, or that you would have such little knowledge about said data...
I couldn't care less about retail data.
-
I've prepared a VP which should allow fonttool to run on it's own without having sparky_fs2.vp in the fonttool directory. Download it here (http://www.ciinet.org/kevin/myimages/fonttool.vp).
BTW Keldor, what version of DirectX do you have? I am thinking your problem is related to DirectX...
Nope. that vp doesn't help me. I had the files contained in it already anyway.
and about DirectX.. erm... first of all, I have DX11. Second... I thouht this one was compiled against the new code.lib. code.lib works exclusively with OpenGL now
Or do you mean some directInput issue or whatever is causing it?
-
I couldn't care less about retail data.
KK, I've never personally had any static with you, but this is the attitude that causes friction between the SCP and WCS. The one rule the entire SCP agrees upon is compatibility with the retail FS2 data, as this is the FS2 Open Source engine after all. Any deviation from this would have to be considered a fork, and as such unsupported by this community, no matter how awesome it might be. Believe me, I'd love to make changes for FotG that would help us out immensely but unless we take measures to assure non-breakage of FS2 data, we can't afford it. That's not to say things like data conversion will always be out of the question, but we always need to be able to maintain the retail experience as closely as possible. This attitude is probably why your patches are often rejected on the first, second or more attempts.
-
I couldn't care less about retail data.
KK, I've never personally had any static with you, but this is the attitude that causes friction between the SCP and WCS. The one rule the entire SCP agrees upon is compatibility with the retail FS2 data, as this is the FS2 Open Source engine after all. Any deviation from this would have to be considered a fork, and as such unsupported by this community, no matter how awesome it might be. Believe me, I'd love to make changes for FotG that would help us out immensely but unless we take measures to assure non-breakage of FS2 data, we can't afford it. That's not to say things like data conversion will always be out of the question, but we always need to be able to maintain the retail experience as closely as possible. This attitude is probably why your patches are often rejected on the first, second or more attempts.
But not that someone would be developing for FS2_Open without the means to verify that their changes won't break with retail data, or that you would have such little knowledge about said data...
I'm not developing for FS_Open and I never was. I'm tryin to get a tool working. What the fact that I don't have FS2 installed has to do with this is really beyond me.
So do me a favor. Get out of this thread if you have nothing to add to it. In other forums one would call this trolling.
First of all: I'm not talking to you. Second of all. this is about the font tool, not about retail behavior of the engine or design philosophy. I was trying to get this one tool to work, so get OFF MY BACK. I've had it with this attitude here.
Saga has been on a fork for 3 weeks already so don#t worry. We won't bother your nice little engine anymore. Now leave me alone.
-
I'm not developing for FS_Open and I never was. I'm tryin to get a tool working. What the fact that I don't have FS2 installed has to do with this is really beyond me.
Simply the fact that fonttool was explicitly designed to work with retail FS2, and has barely been touched since then. If you want to reproduce an experiment, it's a good idea to reproduce the original conditions.
So do me a favor. Get out of this thread if you have nothing to add to it. In other forums one would call this trolling.
First of all: I'm not talking to you. Second of all. this is about the font tool, not about retail behavior of the engine or design philosophy. I was trying to get this one tool to work, so get OFF MY BACK. I've had it with this attitude here.
Keldor, this behavior is inexcusable. Chief1983 is a moderator and a senior member of the SCP. He is trying to provide advice and tech support. And he explicitly prefaced his post with words to the effect of "I mean no disrespect, but you should consider such and such." To react in such a way to his polite and helpful post is rude, arrogant, and offensive. You are the troll here. And if you continue to engage in trolling, you will be banned. Consider this an official warning.
Saga has been on a fork for 3 weeks already so don#t worry. We won't bother your nice little engine anymore. Now leave me alone.
You should consider that non-SCP builds of FSO are not supported by HLP, and will not receive either technical or troubleshooting support. Be careful what you wish for.
-
I'm not developing for FS_Open and I never was. I'm tryin to get a tool working. What the fact that I don't have FS2 installed has to do with this is really beyond me.
So do me a favor. Get out of this thread if you have nothing to add to it. In other forums one would call this trolling.
First of all: I'm not talking to you. Second of all. this is about the font tool, not about retail behavior of the engine or design philosophy. I was trying to get this one tool to work, so get OFF MY BACK. I've had it with this attitude here.
Saga has been on a fork for 3 weeks already so don#t worry. We won't bother your nice little engine anymore. Now leave me alone.
Maybe not, but I'm talking to you. I'm trying to step in before something escalates again as often does around here and defuse the likely inevitable attacks. Maybe it's a self-fulfilling prophecy though, maybe it's fate, I dunno but it seems incapable for you to deal with any member of this team (some more understandably than others). I really wish you'd reconsider your tone towards me, but that's outside the scope of this thread. I was aware of the fork already, so don't expect any shock and awe from me. I hope that works out well for WCS. I'll leave this thread be, if you'll let me. Hopefully you can get your issues with the tool sorted out.
Goob, I don't think banning is necessary in this case if the thread just gets back on track.
-
It's not the thread that's the problem; Keldor has a history of this type of behavior. He has claimed not to realize when things get heated, so I'm explicitly pointing it out for him.
It's also why I gave him a warning instead of a ban. If things get back on track, then everything should be okay.
-
Saga has been on a fork for 3 weeks already so don#t worry. We won't bother your nice little engine anymore. Now leave me alone.
Excellent. I'll remove the -wcs flag immediately!
/me has wanted to do that for years!
Now I've just got to figure out how to get rid of the TBP one.
-
So I got ttf2pcx from http://www.allegro.cc/resource/Tools/Fonts/ttf2pcx. I then exported a font, any font and then tried to convert it to .vf in fonttool.exe. The tool however refuses to process the pcx file and complains "Box at 1,1 is less than one pixel wide".
In second page of this topic Talon 1024 had posted a pcx file which works fine. I noticed that the files ttf2pcx made and Talon's are clearly different.
I've attached the pcx file. How do I get this into .vf?
[attachment deleted by ninja]
-
I really would appreciate if someone could instruct how to get fonts into a pcx file that fonttool.exe can convert. Please?
-
There doesn't seem an easy way to do it besides inserting each and every character there by yourself. Then making sure it works: I had to use the first fonttool download in this thread for the conversion to work.
However, the results are unreadable. Anyone have any ideas how to make it more readable without changing the font? What are the requirements for the font PCX file anyway? Resolution, pallete, etc?
(http://img829.imageshack.us/img829/2276/screen0147.jpg)
-
Fonttool makes fonts in much the same way as Fonttool2. Font characters are bordered with green squares, and fonttool cuts out the font characters from these green squares. There are a few things to be aware of, though:
- All green squares must be the same height. However, you can make them as wide or as narrow as you want. All of the font characters do not have to be on the same row of green cells; you can break the rows of cells wherever you want, but these rows must have at least 1 pixel between the bottom of the first row and the top of the second row.
- The encoding used when creating these fonts is Windows-1252, but fonttool starts with character 32 and ends at character 252. Therefore, the first cell contains character 32 (space), the second cell contains character 33(!), etc.
- The palette used is the same palette used for shield ANIs and HUD gauges in FS2; It's a special 15-color grayscale palette. I have this palette in GIMP format here (http://www.ciinet.org/kevin/myimages/FS-palettes.7z). Just download it and copy it into your C:\Documents and Settings\<username>\.gimp-2.6\palettes directory.
I used GIMP to create the custom fonts for Hostile Frontier. I did it by adding batches of characters to the working image, and moving each character into position manually. I used the pipe character (|) as a guide for maximum/minimum height for the characters, and I just used whatever horizontal spacing seemed reasonable for the characters (large fonts have 2 pixels after each character, small fonts have 1 pixel after each character.)
Anyone have any ideas how to make it more readable without changing the font? What are the requirements for the font PCX file anyway? Resolution, pallete, etc?
Try playing around with the size and hinting settings in GIMP. At one point, I had to use the "force auto-hinting" option because one of the fonts that I was trying to convert was virtually unreadable without it.
The maximum font sheet size for an FS font is 256x256, and the font must use the same palette that is used for HUD and shield icon ANIs.
BTW, the VF files for the WCHF custom fonts are available in the WCHF effects pack (http://www.ciinet.org/kevin/3612mod.7z).
-
Good info, Talon 1024. Very complete.
It is very hard to find a font for font01 that is readable at only 9 pixels high (and 15 colors grayscale). font02 is 18 pixels so at least that's something, but the main font we want to change is font01 (hud, briefings, techroom etc). Takes a LOT of manual editing, but usually ends up just a compromise on a pixel font that looks ok. Readability trumps coolness for now...
Attached are the font01 and font02 grids in PCX format, and the specialized palette in PAL format in case you use something besides GIMP ;)
[attachment deleted by ninja]
-
Talon 1024, would you mind creating a FSWiki page with the information you just posted?
-
Okay, here's a quick-and-dirty guide on how to manually import the output of ttf2pcx into fonttool.
First, create the pcx in ttf2pcx. This will produce output like this:
(http://blueplanet.fsmods.net/E/droid9.png)
Open this in an image editor of choice (I use Paint.Net, and through the course of this post, will continue to refer to it. Gimp or Photoshop should work as well).
Here, use the "Magic Wand" tool in global mode to select the yellow and pink parts of the image. Delete them, so that you end up with the letters on a transparent background, like so:
(http://blueplanet.fsmods.net/E/droid9trans.png)
Now, open one of the font templates talon posted here.
Clear out the letters there.
Note that the "special characters" starting after the ~ symbol should be kept.
Then copy the new letters over one by one. Once you're done, adjust the green grid to match the size of the letters better. Save the whole thing as pcx. If you are using paint.net, do not forget to mark the "Use original Palette" checkbox in the save dialogue.
Feed that to fonttool via commandline, and you should have your .vf font ready.
EDIT: Here's the font: http://blueplanet.fsmods.net/E/font01.vf
-
That's awesome, but as that sounds all entirely programmatic, hopefully we can code up something a little simpler?
-
Man, I sure hope so too.
-
Possibly a merging of ttf2pcx and fonttool?
-
I'm currently looking into ways of just getting fonttool to be fed a TrueType file and programmatically spit out a VF file. TTF2PCX is a good place to start but it uses a Windows library to process the font. Using the open source GNU Freetype library is probably the way to go.
-
That'd be awesome. :)
-
If there's a BSD licensed alternative to FreeType I'd look into that, who knows maybe we could just integrate it directly into FSO at some point. But not if it's GPL'd code.
-
There's Pango (http://en.wikipedia.org/wiki/Pango), which is LGPL...
-
In that case, we could probably use it but I'm not sure we can statically link it.
-
In that case, we could probably use it but I'm not sure we can statically link it.
Yes, we cannot statically link LGPL code (because of our license we are basically an binary/commercial project (because we impose more restrictions than the GPL or LGPL)).
-
If there's a BSD licensed alternative to FreeType I'd look into that, who knows maybe we could just integrate it directly into FSO at some point. But not if it's GPL'd code.
FreeType has a BSD-like FreeType license.
FreeType is released under two free software licenses: the GNU General Public License or a permissive license with an acknowledgement clause similar to that of the current license of XFree86 (the acknowledgement clause renders it incompatible with version 2 of the GNU GPL, though it is compatible with GPL version 3). The library can thus be used by any kind of project, be it proprietary or not. As well as being used by the major free software desktop systems, FreeType is widely used as a rasterization engine for modern video games.