#44425 - Sylfurd - Wed Jun 01, 2005 6:40 pm
Ok, here's what I made:
It's a specific 3x8 font using the subpixels of LCDs screens that make it totally readable despite of its small weight ! It allows to display a lot more text than any other font without degrading the comfort of reading, which is really usefull on the small resolution of the DS screens !
Displaying 80+ characters per line on the DS screens is no more a dream !
Notice that it only works well on real hardware, in emulator, it's really unreadable on CRT monitors, but looks great on LCD monitors if they are well calibrated :)
Last Version
Ok, I've added a "reverse" mode which display de text "black" on white instead of "white" on black, it may be useful. It's just about inversing the 8 colors of the palette ... I had ever tried that a few days ago and it looked really bad with the thin font, but with the new bold one it looks ok, here's the link:
http://sylfurd.free.fr/subPixelFont4.rar
Old versions:
http://sylfurd.free.fr/subPixelFont3.rar
I added the new bold font which looks brighter than the thin one ( but I find it less precise ) without being larger (it's always a 3x8 font ). You can switch it with the LEFT button.
I added a small text info on the bottom left of the screen which indicates what mode and what font you are using (BGR, RGB, thin & bold)
I'm always waiting your comments and critics :)
here's are photos running on a DS (thanx a lot czc !):
bold with a thin insert
[Images not permitted - Click here to view it]
thin with a bold insert
[Images not permitted - Click here to view it]
Last edited by Sylfurd on Sat Jun 04, 2005 12:05 am; edited 15 times in total
#44428 - zubiac - Wed Jun 01, 2005 6:53 pm
well....great
people could use it for homebrewn organizer software(*looks angry at nintendo*) and stuff...
.....but am I the only one who can't find the darn link?
huh?
_________________
Abusing Cube and DS with all sorts of homebrew and hacks.
#44429 - Sylfurd - Wed Jun 01, 2005 7:01 pm
Ooops, I forgot it, done now :)
thx ;)
#44430 - Sylfurd - Wed Jun 01, 2005 7:02 pm
I will then try to make a small app using it, like a small text editor ...
I will try to add some smaller heighted fonts too, despite that it will degrade the lisibility for some characters ...
#44434 - Mr Snowflake - Wed Jun 01, 2005 8:12 pm
Why not make some sort of pda like software with a windowing system (kinda like wins, but without the window movement, I find that kinda useless. More like palm os and windows mobile)
#44435 - strager - Wed Jun 01, 2005 8:14 pm
You might wanna read this:
http://grc.com/cttech.htm
It will make the font look a %&&(&&^'n $#^$^*#$^ lot better.
#44437 - Sylfurd - Wed Jun 01, 2005 8:18 pm
strager wrote: |
You might wanna read this:
http://grc.com/cttech.htm
It will make the font look a %&&(&&^'n $#^$^*#$^ lot better. |
yep but it will really more fat, I don't want to use the subpixel for antialiasing but for drawing tiny fonts :)
#44438 - strager - Wed Jun 01, 2005 8:29 pm
Sylfurd wrote: |
I don't want to use the subpixel for antialiasing but for drawing tiny fonts :) |
Drawing tiny anti-aliased fonts.
#44439 - Sylfurd - Wed Jun 01, 2005 8:39 pm
strager wrote: |
Sylfurd wrote: | I don't want to use the subpixel for antialiasing but for drawing tiny fonts :) |
Drawing tiny anti-aliased fonts. |
there is no sub-subpixel to make antialiased tiny subpixel fonts :D
#44440 - strager - Wed Jun 01, 2005 9:11 pm
Must I explain?
[snipped]
Whatever...
Here's the routine (roughly):
Code: |
struct sPixel
{
struct sPixel left, right;
col color;
};
while(spixel)
{
pixel = (spixel->left->color + spixel->color + spixel->right->color) / 3;
pixel++;
spixel++;
};
|
Hope you understand. My brain's a little fried..
Edit: English: Average the left, right, and current pixels and output to video buffer. Maybe I'll make an example for the GBA.
#44444 - Sylfurd - Wed Jun 01, 2005 9:31 pm
strager wrote: |
Must I explain?
[snipped]
Whatever...
Here's the routine (roughly):
Code: |
struct sPixel
{
struct sPixel left, right;
col color;
};
while(spixel)
{
pixel = (spixel->left->color + spixel->color + spixel->right->color) / 3;
pixel++;
spixel++;
};
|
Hope you understand. My brain's a little fried..
Edit: English: Average the left, right, and current pixels and output to video buffer. Maybe I'll make an example for the GBA. |
I've tried something like that but there is loss in precision with such a thin font ... It doesn't really help for reading it adds a blur which is a bit confusing at such a precision... It's not an antialiasing algorithm based on a high res font that add precision but only blur ...
#44451 - maniacdevnull - Wed Jun 01, 2005 10:42 pm
Get this to pepsiman so he can use it in DS Linux.
Looks great man, reminds me of my old Apple IIe.
#44456 - Sylfurd - Thu Jun 02, 2005 12:03 am
maniacdevnull wrote: |
Get this to pepsiman so he can use it in DS Linux.
Looks great man, reminds me of my old Apple IIe. |
Thanx :)
He said that linux shell can use colored text, and as my font can't have colors ... But then he tried it on his DS and looked more interested ...
I personnaly think it would be great for a linux shell !
#44458 - darkfader - Thu Jun 02, 2005 12:23 am
Someone here must have been colorblind ;P
Anyway, to clear it up even more:
Code: |
bad:
R-B---
-G-R--
--B-G-
bad:
RG----
-GB---
--BR--
good:
RGB---
-GBR--
--BRG-
|
Of course a long row doesn't need to have outweighted components:
RGBRGBRGBRG <- last missing B
Doing that all in real-time might be a little overkill and it might just work to pre-render all characters for a given size.
I have a laptop with 1400x1050 resolution and I really love that ClearType(TM:).
I wonder if the RGB order is fixed or might change later. Or perhaps there's a firmware setting for that? ;P
#44461 - Mollusk - Thu Jun 02, 2005 1:21 am
I looked at it on DS, it's really great ! Impressive how much text can be displayed !
Is there a way to limit the redish color of the text or not ?
It would also be nice to see the same font, but a little smaller, that way you have even more lines :p
Keep up the good work :)
(for WinS, I have to say I don't really get the purpose of having wondows either...)
#44476 - tepples - Thu Jun 02, 2005 3:23 am
GBA and GBA SP both have BGR ordering. Most laptop and desktop LCD panels have RGB ordering, except for some early models of iBook which seem to have BGR ordering. Nintendo DS subpixel order seems to depend on top screen vs. touch screen.
And yes, I was an Apple II fan as well :-)
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#44493 - czc - Thu Jun 02, 2005 7:53 am
took a photo with my powershot a400 in macro mode
[Images not permitted - Click here to view it]
#44498 - sajiimori - Thu Jun 02, 2005 8:36 am
That's incredible! :O
#44499 - Sylfurd - Thu Jun 02, 2005 8:36 am
Thanx a lot ! that's really impressive on the DS screens !!!
I add it in the first post !
Currently I'm trying some improvements to reduce the colorish effect :)
#44501 - Mr Snowflake - Thu Jun 02, 2005 10:12 am
It looks good, but om my (crt) monitor, I find it to colorfull and I think this could be pretty hard for you eyes to read them for too long. But if you say you can make it better, that would be great.
I wish I was born before the apple II, so I never had the honor to work with that great machine... :(
#44507 - Sylfurd - Thu Jun 02, 2005 12:02 pm
Mr Snowflake wrote: |
It looks good, but om my (crt) monitor, I find it to colorfull and I think this could be pretty hard for you eyes to read them for too long. But if you say you can make it better, that would be great.
I wish I was born before the apple II, so I never had the honor to work with that great machine... :( |
yep, it's absolutely unreadable on a CRT monitors, it only works with LCD ones, so don't worry it looks really better on DS (look at the photo in the first post )
So, I've made a new version of my rom, you can download it here:
http://sylfurd.free.fr/subPixelFont2.rar
I added the new bold font which looks brighter than the thin one (I find it less precise) without being larger (it's always a 3x8 font ). You can switch it with the L button.
I added a small text info on the bottom left of the screen which indicates what mode and what font you are using (BGR, RGB, thin & bold)
I'm waiting your comments :)
Last edited by Sylfurd on Thu Jun 02, 2005 12:06 pm; edited 1 time in total
#44508 - Mollusk - Thu Jun 02, 2005 12:06 pm
The keys don't work for me... :/
#44509 - unrequited - Thu Jun 02, 2005 12:09 pm
Mollusk wrote: |
The keys don't work for me... :/ |
Ditto
_________________
-Unrequited
#44511 - Sylfurd - Thu Jun 02, 2005 12:21 pm
ok, there's a bug somewhere, keys only work with Dualis ...
I'm checking that !
#44512 - Mr Snowflake - Thu Jun 02, 2005 12:31 pm
Sylfurd wrote: |
Mr Snowflake wrote: | It looks good, but om my (crt) monitor, I find it to colorfull and I think this could be pretty hard for you eyes to read them for too long. But if you say you can make it better, that would be great.
I wish I was born before the apple II, so I never had the honor to work with that great machine... :( | yep, it's absolutely unreadable on a CRT monitors, it only works with LCD ones, so don't worry it looks really better on DS (look at the photo in the first post ) |
I was talking about the photo.
#44513 - Sylfurd - Thu Jun 02, 2005 12:44 pm
Mr Snowflake wrote: |
Sylfurd wrote: | Mr Snowflake wrote: | It looks good, but om my (crt) monitor, I find it to colorfull and I think this could be pretty hard for you eyes to read them for too long. But if you say you can make it better, that would be great.
I wish I was born before the apple II, so I never had the honor to work with that great machine... :( | yep, it's absolutely unreadable on a CRT monitors, it only works with LCD ones, so don't worry it looks really better on DS (look at the photo in the first post ) |
I was talking about the photo. |
Ok, yes it's one of the disadvantages of such a font, it's colorish ... Nevertheless, the new bold font is more white than this one.
#44519 - Sylfurd - Thu Jun 02, 2005 2:04 pm
Ok, here is the NEW version, this one is working: http://sylfurd.free.fr/subPixelFont3.rar
I changed the key to switch in the bold font, I failed to make the L key working so, it's the LEFT key now :)
I'm waiting your comments and crits !
#44520 - strager - Thu Jun 02, 2005 2:16 pm
I see that DS shot ---
NOW I'm jeallous :)
All I need is a new lnkscript and I'm finished with my demo.
Edit: OK, I'm finished with the demo (for the most part). Get it here (use a flash cart, don't use multiboot). If someone would be kind enough to take a screenshot, I'd be greatful. :-)
Edit: Woopsies, forgot the link. Here it is: http://pokegba.webpal.info/pub/subpixel.zip. When you run the ROM, press B after a second. Start and Select zoom in/out.
*crosses fingers, hoping it works*
#44525 - josath - Thu Jun 02, 2005 4:44 pm
strager wrote: |
*crosses fingers, hoping it works* |
I get a black screen, but then i hit some buttons and it started working (or maybe there's a long loading delay, i dunno)
Grey mode:
[Images not permitted - Click here to view it]
RGB mode:
[Images not permitted - Click here to view it]
#44526 - Mollusk - Thu Jun 02, 2005 4:54 pm
Strager, your link doesn't work...
oops, worked with IE...
I guess Sylfurd's just looked better. I'm having a hard time reading this one...
#44527 - josath - Thu Jun 02, 2005 5:19 pm
yeah the gba one is not quite as readable, but the colors are modified so that it looks more 'white' and less colorful. also note that my camera's not as good as the other guy's
#44530 - strager - Thu Jun 02, 2005 5:44 pm
Did you try BGR? That may work better...
Maybe I'll get a multiboot version working.
Last edited by strager on Thu Jun 02, 2005 5:47 pm; edited 1 time in total
#44531 - josath - Thu Jun 02, 2005 5:47 pm
no, rgb looked better. i think it's not the antialiasing, it's the font itself. the shape of the other font is just designed better. the antialiasing itself is good on both of them (maybe even a little better on the gba one)
#44537 - strager - Thu Jun 02, 2005 6:15 pm
OK, multiboot sorta works. Since the Multiboot ROM is larger than EWRAM, it's all messed up here and there, but otherwise, it's fine.
Link: http://home.ripway.com/2005-6/319235/subpixel.zip
#44557 - czc - Thu Jun 02, 2005 8:42 pm
I really prefer the bold font Sylfurd.
Take distance when looking at my photos and compare.
bold with a thin insert
[Images not permitted - Click here to view it]
thin with a bold insert
[Images not permitted - Click here to view it]
And strager anti aliasing
[Images not permitted - Click here to view it]
Very good for pictures and drawing, but the font doesn't look as sharp.
Last edited by czc on Thu Jun 02, 2005 8:57 pm; edited 2 times in total
#44558 - strager - Thu Jun 02, 2005 8:55 pm
Hey Sylfurd, can you get the origional image of the font so I can see how it looks using my method?
Thanks.
Edit: Fixed the multiboot problem. Silly me, I accidentally spelled MULTIBOOT wrong in an #ifdef. Took me a while to find that out.
Happy coding!
Edit: For anyone who is curious, here's the origional bitmap in my demo:
http://img260.echo.cx/my.php?image=font0ig.gif
Notice the fat font. I found that font sheet on the net; it looks like the old Windows Terminal font...
#44567 - unrequited - Thu Jun 02, 2005 10:58 pm
Any way we can get an .nds so I can use wmb to test it?
_________________
-Unrequited
#44568 - strager - Thu Jun 02, 2005 11:11 pm
unrequited wrote: |
Any way we can get an .nds so I can use wmb to test it? |
Sorry, I can't develope for the DS (I'm having trouble with compiling). Maybe if someone could make a GBA emulator (another topic), you could do it on the DS.
#44570 - Sylfurd - Thu Jun 02, 2005 11:39 pm
Wooo thanx, it seems that the bold font looks better for everyone :)
strager wrote: |
Hey Sylfurd, can you get the origional image of the font so I can see how it looks using my method? |
It's exactly the same you're using, but yours has more characters, mine is the original font of the console :)
I think with this method we can make a lot of thing usefull like displaying a webpage in 768(=3x256)x192, it would be really comfortable :)
Last edited by Sylfurd on Thu Jun 02, 2005 11:45 pm; edited 1 time in total
#44571 - strager - Thu Jun 02, 2005 11:44 pm
Sylfurd wrote: |
strager wrote: | Hey Sylfurd, can you get the origional image of the font so I can see how it looks using my method? | It's exactly the same you're using for the characters, but yours has more characters, mine is the original font of the console :) |
Are you sure? Mine looks totally different. :-\
#44572 - Sylfurd - Thu Jun 02, 2005 11:47 pm
strager wrote: |
Sylfurd wrote: | strager wrote: | Hey Sylfurd, can you get the origional image of the font so I can see how it looks using my method? | It's exactly the same you're using for the characters, but yours has more characters, mine is the original font of the console :) |
Are you sure? Mine looks totally different. :-\ |
yep, mine is this one: http://sylfurd.free.fr/9x8Font.bmp
I've just added a white row to each caracter to fit in 9 rows and so to fit in 3 rows when reduced...
Last edited by Sylfurd on Thu Jun 02, 2005 11:53 pm; edited 1 time in total
#44573 - Sylfurd - Thu Jun 02, 2005 11:51 pm
oops, nothing, not awaken today :P
Last edited by Sylfurd on Thu Jun 02, 2005 11:52 pm; edited 1 time in total
#44574 - strager - Thu Jun 02, 2005 11:52 pm
That may be it: I'm not spacing my characters. I'll fix that..
Edit: fixed: http://home.ripway.com/2005-6/319235/subpixel.zip
Image included. I haven't tested it on my hardware yet, so I don't know if it has improved any..
Edit: Tested, works great. A little dark on some of the smaller characters, though. The penalty for using anti-aliasing.
I've also thought of some other methods. Gonna try them out tomorrow.
Edit: http://home.ripway.com/2005-6/319235/subpixel.zip Added a readme. Go from there.
#44662 - Sylfurd - Sat Jun 04, 2005 12:00 am
Ok, I've added a "reverse" mode which display de text "black" on white instead of "white" on black, it may be useful. It's just about inversing the 8 colors of the palette ... I had ever tried that a few days ago and it looked really bad with the thin font, but with the new bold one it looks ok, here's the link:
http://sylfurd.free.fr/subPixelFont4.rar
always waiting your comments and crits :)
#44668 - czc - Sat Jun 04, 2005 12:42 am
i took a photo of both and copy paste in the same picture
[Images not permitted - Click here to view it]
The bold font show alot of red for w's and m's , i wondered if it would be possible to shift the whole text by 1 or 2 subpixels.
Another idea, what about a pure color for the background, a choice between pure red pure green or blue. Or 2 pure colors red-green, red-blue or green-blue.
The best IMHO is the bold font on black background.
#44694 - Sylfurd - Sat Jun 04, 2005 10:40 am
czc wrote: |
i took a photo of both and copy paste in the same picture
[Images not permitted - Click here to view it]
The bold font show alot of red for w's and m's , i wondered if it would be possible to shift the whole text by 1 or 2 subpixels.
Another idea, what about a pure color for the background, a choice between pure red pure green or blue. Or 2 pure colors red-green, red-blue or green-blue.
The best IMHO is the bold font on black background. |
Yes I will try to improve the m and the w, they look really bad ... for the pure color for the background, I will do some tests but I think that it will result in a loss of details ...
I agree with you, the white bold font on black background looks the best :)
and thx again for the photo ;)
#44695 - Mollusk - Sat Jun 04, 2005 10:58 am
The black font is great ! Only the M and W need to change a little, the rest is just... perfect ! Can wait to test that out...
#45050 - josath - Tue Jun 07, 2005 9:34 am
What about creating a slightly bigger font using subpixels, for things that don't really need to stuff that many characters in there, but want the benifit of higher resolution text?
#45062 - strager - Tue Jun 07, 2005 1:30 pm
It can be done, but you'll be the one supplying the font for us to use. :-)
#45124 - tepples - Tue Jun 07, 2005 8:16 pm
I've been working on a 5x8 pixel (15x8 subpixel) font.
Figure 1: The font at three times actual size, the subpixel-shrunken version, and a simulation of how an RGB LCD displays the subpixel version
Figure 2: If your PC has an RGB LCD, look at this for an actual-size demo
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#45130 - ScottLininger - Tue Jun 07, 2005 8:56 pm
An alternative to calculating subpixels "on the fly" from a 1-bit (black and white) font is to use WindowsXP's built-in cleartype functionality. I wrote a simple little app that displays an ASCII character set from any truetype or adobe font and spits out a merged font graphic suitable for programming around.
Since these fonts contain high resolution versions, cleartype seems to do a better job of handling diagonal characters like your W's and M's.
Here are a couple of examples (in BGR order). If anyone wants to use these, feel free. They include bold and italic versions. These happen to be on a 10x10 grid, which might be an inconvenient number for your type engine.
http://www.thingker.com/media/gba/fontGeorgia9pt.gif
http://www.thingker.com/media/gba/fontVerdana9pt.gif
If anyone has a request for a specific font, let me know and I could post it. I could also send the little font generation app, but you'll need to have cleartype enabled for it to work.
Cheers,
Scott
#45185 - Gendal - Wed Jun 08, 2005 11:43 am
I can't take photo's for crap, but I just wanted to say thanks for posting the font, it goes along nicely with my early angband 2.8.3 port.
[Images not permitted - Click here to view it]
[Images not permitted - Click here to view it]
[Images not permitted - Click here to view it]
Need to work on the redraw speed on a full screen, implement a virtual keyboard, etc etc but it's pretty playable as far as the screen is concerned. I think a custom tile set would serve me better in the end (i really want color text) but for getting me up and running the 3x8 font is the bomb =)
#45264 - The 9th Sage - Thu Jun 09, 2005 3:04 am
Gendal wrote: |
I can't take photo's for crap, but I just wanted to say thanks for posting the font, it goes along nicely with my early angband 2.8.3 port. |
ooooh....a rouge-like game for the DS. :) Now I know what's going to be occupying my time after it's released.
_________________
Now with 20% More Old Man from Zelda 1 than ever before!
#45290 - zubiac - Thu Jun 09, 2005 7:30 am
Gendal wrote: |
I can't take photo's for crap, but I just wanted to say thanks for posting the font, it goes along nicely with my early angband 2.8.3 port.
|
excuse my ignorance but what exactly is "angband 2.8.3"?
some sort of text adventure(like the linux text adventures?)?
_________________
Abusing Cube and DS with all sorts of homebrew and hacks.
#45312 - tepples - Thu Jun 09, 2005 3:44 pm
Google [ angband ] I'm Feeling Lucky
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#45325 - zubiac - Thu Jun 09, 2005 5:28 pm
ok ok....my bad
thanx anyway
regarding angband: wow...my friend(a "real" role player) would buy a DS just for this. great
_________________
Abusing Cube and DS with all sorts of homebrew and hacks.
#45964 - Sylfurd - Fri Jun 17, 2005 9:28 am
That looks great ! When I'll have the time i will post a code to use the font as sprites :)
#46186 - cory1492 - Tue Jun 21, 2005 2:14 pm
Any chance you can aim me at some info on replacing the .h (or even the the standard console font table) for changing to different fonts? I'm not entirely certain yet what I am looking at when I see a font table like in the .h (but a gif on the other hand is pretty clear, just how the two relate though...) It kind of looks like something bin2c would output, but...
#46734 - GPFerror - Wed Jun 29, 2005 7:14 pm
Sylfurd wrote: |
yep, mine is this one: http://sylfurd.free.fr/9x8Font.bmp
I've just added a white row to each caracter to fit in 9 rows and so to fit in 3 rows when reduced... |
I was wondering how to convert this bmp to a map and tile files for use in PA_lib 's PA_SetTextCustomFont .
Thanks