Графические шрифты

Программист Ruby Разработчик Проект месяца 3 место Проект месяца 2 место Проект года 1 место Проект года 3 место Учитель Оратор Паладин Проект месяца 1 место 2 место Готв 3 место Организатор конкурсов Ветеран
Больше
12 года 10 мес. назад - 12 года 9 мес. назад #62406 от caveman
Захотелось сделать для мейкера поддержку шрифтов из сторонних картинок, и начал с vxace. Существующих решений с ходу не
нашел, да и Эльф подтвердил, что нету.

Статья сопровождается массивным описанием, читаем внимательно.

1.Что это такое и как это применять?
В мейкере для окон диалогов мы можем применять стандартные или не очень шрифты, специально составленные и установленные куда-то в недра винды (не факт, правда, что у ваших игроков они будут установлены, так что дописывайте инструкции к играм, пользующим что-то нестандартное). Но что делать, если вы - художник или у вас есть художник, который может нарисовать вам красивые атмосферные буквы, типа этих :kiss: :

ВНИМАНИЕ: Спойлер!


Не заставлять же его формировать ttf файл, верно?
Вот поэтому я и написал небольшой скриптик, который будет еще улучшаться разными опциями и фичами, но уже с готовым ядром.

Итак, действия:
  1. Рисуем, воруем в интернетах файл с буквами
    ВНИМАНИЕ: Спойлер!
  2. Форматируем его в графическом редакторе так, чтобы буквы шли в нужном порядке и занимали полностью
    ширину картинки (как только место кончается - переносим на другую строку). Не забываем про то, что ряды должны быть одинаковой высоты, называемой размером шрифта. Естественно, рисунки букв стоит делать основного размера, который будет использоваться в мейкере (в vx, обычно, это 24 пикселя).
    ВНИМАНИЕ: Спойлер!

    Набор и порядок букв, задается скриптом, вот тут:
    ВНИМАНИЕ: Спойлер!

    Это не значит, что у вас должны быть картинки всех букв (в примере я обошелся только английскими буквами, цифрами и спецсимволами), но есть момент, который я опишу в следующем пункте. Сохраняем рисунок в PNG.
  3. Создаем файл описания шрифта, он должен иметь такое же наименование, что и рисунок, но расширение TXT.
    Описание выглядит примерно так:
    Code:
    size:24 indent:2 space:10 letters:12,13,13,13,13,13,11,12,5,15,12,12,14,13,11,14,11,14,12,13,12,10,14,11,12,13,10,9,10,11,10,10,16,11,6,10,12,8,12,10,10,9,12,10,9,11,10,9,12,9,11,14,9,10,10,11,11,10,12,9,11,11,6,9,5,6,7,7
    где size - высота шрифта
    indent - расстояние между картинками букв (если надо дополнительное)
    space - размер пробела
    letters - ширины всех букв в пикселях (придется нудно мерять вашу картинку), описанных в @letters_eng в одну строку без переноса. Если буквы нет, пишите 0, если у вас только английский шрифт - то конец можно нулями не забивать.
  4. Создаем папку Fonts в папке Graphics и кидаем туда оба файла
  5. Вписываем в настройках скрипта его название. В раздел НАСТРОЙКИ @current_font = "..."
  6. ...
  7. PROFIT

Пример использования графического шрифта в игре
ВНИМАНИЕ: Спойлер!


2. Скрипт
ВНИМАНИЕ: Спойлер!


3. Демо
yadi.sk/d/0vE3nIkN6n1n6
Последнее редактирование: 12 года 9 мес. назад пользователем caveman. Причина: 1.02
Спасибо сказали: AnnTenna, poca

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
12 года 9 мес. назад #62550 от DeadElf79
DeadElf79 ответил в теме Графические шрифты
А вообще, это вариант вернуть старые добрые градиентные шрифты, как я где-то видел. Не в рм2к3 случаем?)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Разработчик Проект месяца 3 место Проект месяца 2 место Проект года 1 место Проект года 3 место Учитель Оратор Паладин Проект месяца 1 место 2 место Готв 3 место Организатор конкурсов Ветеран
Больше
12 года 9 мес. назад #62573 от caveman
caveman ответил в теме Графические шрифты
Обновил скрипт до 1.02, где появилась возможность применения его и к интерфейсу (см новый скрин).

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
11 года 1 мес. назад #79001 от strelokhalfer
Пещерный, вот тебе задание для саморазвития: сможешь прикрутить поддержку нормальных рисованных шрифтов? Я про те, что идут парно, графика и таблица, что генерируется данной прогой?

"Стрелок, что-то ты неочень похож на свой аватар..."(с)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Разработчик Проект месяца 3 место Проект месяца 2 место Проект года 1 место Проект года 3 место Учитель Оратор Паладин Проект месяца 1 место 2 место Готв 3 место Организатор конкурсов Ветеран
Больше
11 года 1 мес. назад #79005 от caveman
caveman ответил в теме Графические шрифты
вау какая штука!
посмотрю, вспомнить бы еще что к чему тут было

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
11 года 1 мес. назад #79013 от strelokhalfer
Я видел проект на руби с такой поддержкой, правда не помню какой и на рельсах ли он был, не скажу.

"Стрелок, что-то ты неочень похож на свой аватар..."(с)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 года 1 мес. назад #79035 от AVS
AVS ответил в теме Графические шрифты
А не легче просто нарисовать шрифт в font creator или ещё чём-то (corel draw на худой конец) и просто поместить его в папку Fonts в папке с твоей игрой, а потом прописать его как дефолтный шрифт в скрипте??

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
11 года 1 мес. назад #79039 от DeadElf79
DeadElf79 ответил в теме Графические шрифты
AVS, так то обычный шрифт будет, а тут сразу с любыми эффектами в любом их количестве без необходимости программной реализации оных над имеющимися шрифтами. Какая-никакая, а все же оптимизация

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
11 года 1 мес. назад #79040 от strelokhalfer
Иногда растровые лучше.

"Стрелок, что-то ты неочень похож на свой аватар..."(с)
Спасибо сказали: DeadElf79

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 года 1 мес. назад #79045 от AVS
AVS ответил в теме Графические шрифты
В данном конструкторе свистелки с перделками будут выглядеть неаккуратно, особенно в диалоговых окнах (скриншоты с примером кастомного шрифта, например, показывают очень некрасивую белую обводку), а для титульников легче сделать в фонтлабе или фотошопе (или даже ручками и сканером).

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
11 года 1 мес. назад #79046 от strelokhalfer
Плюс растра в том, что как ты его сделаешь, таким он и будет. А вектор ингда ведет себя неадекватно, как переводчик игр тебе сказать могу.

"Стрелок, что-то ты неочень похож на свой аватар..."(с)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 года 1 мес. назад #79051 от AVS
AVS ответил в теме Графические шрифты
Просто у меня конкретно с рпгмэйкером прямо противоположная ситуация была.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
11 года 1 мес. назад #79060 от strelokhalfer
Может с палитрой что было или с глубиной цвета.

"Стрелок, что-то ты неочень похож на свой аватар..."(с)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.117 секунд
Работает на Kunena форум