Page 2 of 5
Re: Немасштабируемые векторные шрифты
Posted: Tue Nov 29, 2011 2:33 pm
by Mario
Если никто не ломал, то для 320*240*256 и 640*480*16 создавался буфер и уж из него все копировалось на экран.
Re: Немасштабируемые векторные шрифты
Posted: Thu Mar 15, 2012 4:13 am
by art_zh
После (технического) перерыва вернулся к вычесыванию блох из НВШ.
Парсер прямых линий и некоторых спецштрихов наконец заработал
"Прямолинейные" символы вроде П или Щ отлично рисуются.
сложные штрихи пока виснут.
PS. Технические версии выкладываю в SVN "для докУменту".
Есть причины.
Re: Немасштабируемые векторные шрифты
Posted: Fri Mar 16, 2012 2:08 am
by art_zh
Уфф, этот парсер меня вконец запарсил
Теперь осталось неправильные закорючки поправить где надо.
... и приниматься за новые шрифты,
побольше,
побольше!
-
NSVF.png (9.94 KiB)
Viewed 10151 times
А размером - поменьше,
поменьше.
Парсер занимает меньше 600 байт, еще около 200 в таблицах закорючек (они общие для всех шрифтов).
У каждого шрифта своя таблица адресов (512 байт) и карусель закорючек - всего 688 байт для вот этого "шрифта".
Re: Немасштабируемые векторные шрифты
Posted: Fri Mar 16, 2012 2:37 am
by Mario
Больше! Больше! Больше! Чорт! Больше 200 не дает! Но все равно больше чем 146%
Как там с заполнением кишков у больших шрифтов?
Re: Немасштабируемые векторные шрифты
Posted: Fri Mar 16, 2012 11:07 am
by SoUrcerer
Мда, мои шрифты побольше занимают, однако. На два порядка.
Re: Немасштабируемые векторные шрифты
Posted: Fri Mar 16, 2012 8:12 pm
by XVilka
Браво, art_zh! Отличная работа!
Re: Немасштабируемые векторные шрифты
Posted: Fri Mar 23, 2012 4:19 am
by art_zh
#2499: закорючки перенумерованы.
Выделено больше места для самых ходовых 5- и 6-пиксельных элементов.
Блин, как же сложно оказывается эти шрифты рисовать
Но это плата за очень плотный формат и распаковку символов "слёту" на экран, без битмапов, .
Re: Немасштабируемые векторные шрифты
Posted: Tue Mar 27, 2012 1:59 am
by art_zh
Гы, однако они очень легко "масштабируются":
Spoiler:
-
NSVF.png (10.5 KiB)
Viewed 10015 times
дочищаю кракозябры...
Re: Немасштабируемые векторные шрифты
Posted: Tue Mar 27, 2012 9:13 pm
by SoUrcerer
Они правда быстрее, чем битмаповые?
Re: Немасштабируемые векторные шрифты
Posted: Tue Mar 27, 2012 9:18 pm
by Mario
Вероятно, по скорости, соизмеримые величины.
art_zh wrote:Гы, однако они очень легко "масштабируются":
Но они же судя по скриншоту все равно получаются кубические (в стиле
Minecraft), т.е. грубое масштабирование.
Re: Немасштабируемые векторные шрифты
Posted: Tue Mar 27, 2012 9:49 pm
by SoUrcerer
Я так понимаю, just as planned.
Re: Немасштабируемые векторные шрифты
Posted: Wed Mar 28, 2012 2:49 am
by art_zh
SoUrcerer wrote:Они правда быстрее, чем битмаповые?
должны быть быстрее, а правда или нет - скоро увидим
Re: Немасштабируемые векторные шрифты
Posted: Thu Mar 29, 2012 1:17 am
by art_zh
Ну вот, собссно, и сабж
-
fonts.png (13.08 KiB)
Viewed 9920 times
Сверху новый шрифт, снизу - два старых. Слева - время вывода строчки из 40 символов в тактах CPU (впрочем, зачем нужно комментировать - листинг же).
Новый шрифт очень похож на системный номер 0. Изобретать велосипед пришлось по двум причинам:
1) я хочу выкинуть растровые фонты из ядра, и заменить их векторными. Нужна совместимость.
2) нужно было напрямую сравнить размер и скорость отрисовки у двух "почти одинаковых" шрифтов.
Результат мне нравится: даже самый маленький растровый шрифт почти вдвое больше векторного, и на 25-40% медленнее.
На более крупных шрифтах разница будет заметнее - в разы.
Re: Немасштабируемые векторные шрифты
Posted: Thu Mar 29, 2012 1:29 am
by Mario
А побольше? Еще больше! Еще больше!
Re: Немасштабируемые векторные шрифты
Posted: Thu Mar 29, 2012 1:38 am
by dunkaist
Скорость, действительно, впечатляет; отличная работа!
Но некоторые глифы выглядят довольно странно (та же 'a'). Я правильно понимаю, что шрифт, аналогичный по начертанию текущему системному, потребовал бы слишком много уникальных "закорючек", и размер кода/шрифта вырос бы, а скорость отрисовки упала? Или смену шрифта принимать скорее как feature и лишний повод для 'сделай сам'?