Растровый фонт для рогуелайка (и не только)

Темы, связанные с проектированием и программированием roguelike-игр

Модераторы: Sanja, Максим Кич

roguE-Sadist
Сообщения: 9
Зарегистрирован: 12 июл 2007, 20:08

Растровый фонт для рогуелайка (и не только)

Сообщение roguE-Sadist » 13 авг 2007, 04:51

Рано или поздно мы все столкнёмся с отсутствием режима дос-графики (или как его зовут), что приведёт к потребности растрового (без дополнельных либ векторный вручную жесть(я так делал) ) фонта.

Самый простой способ сделать - написать (на tp) программу выводящую в 16на16 (можно и 256х1 или 1х256) все смволы, а затем в окне проставить необходимый шрифт и print-screen, а затем paint-brush это. По-желанию изменить некоторыесимволы(на монстру кпримеру). И будет однобитный растр рогуелайка нашей мечты.

Аватара пользователя
Sanja
Администратор
Сообщения: 791
Зарегистрирован: 24 ноя 2006, 12:25
Откуда: Новосибирск
Контактная информация:

Сообщение Sanja » 13 авг 2007, 06:28

У меня другой метод :) Поищи утилиту Bitmap Font Builder. Это то что надо для рл-мейкера.

Аватара пользователя
Максим Кич
Администратор
Сообщения: 1642
Зарегистрирован: 03 дек 2006, 20:17
Откуда: Витебск, Беларусь
Контактная информация:

Сообщение Максим Кич » 13 авг 2007, 07:38

Столкнулся. Решил проблему при помощи Фотошопа и такой-то матери в течении получаса. Главное шрифт брать моноширинный, поскольку любой другой всё равно будет смотреться паршиво. А дальше мы просто набиваем строку за строкой в соответствии с таблицей ASCII. И ещё останется почти сотня символов, которые можно использовать на своё усмотрение. В конце, скорее всего, придётся обработать результат напильником, поскольку сходу подобрать кегль шрифта в соответствии размерам тайла будет проблематично.
Dump the screen? [y/n]

Аватара пользователя
Sanja
Администратор
Сообщения: 791
Зарегистрирован: 24 ноя 2006, 12:25
Откуда: Новосибирск
Контактная информация:

Сообщение Sanja » 13 авг 2007, 08:10

Прога делает _любой_ шрифт моноширинным. Подгоняет размеры шрифта. Короче наш выбор. То что получится после можно и фотошопом обработать.

Аватара пользователя
Максим Кич
Администратор
Сообщения: 1642
Зарегистрирован: 03 дек 2006, 20:17
Откуда: Витебск, Беларусь
Контактная информация:

Сообщение Максим Кич » 13 авг 2007, 09:02

Sanja писал(а):Прога делает _любой_ шрифт моноширинным. Подгоняет размеры шрифта. Короче наш выбор. То что получится после можно и фотошопом обработать.
Э, батенька, любой шрифт не может быть моноширинным. Вообще, моноширинный шрифт с точки зрения типографики — неполовое извращение вызванное к жизни техническими особенностями пишущих машинок. То, что программа отбрасывает информацию о кернинге, это ни разу не есть хорошо: на выходе мы обречены получать разномастных уродцев. У меня есть подобный опыт. Игровое поле будет отображаться нормально, а вот надписи — не факт.

Грамотно переработать шрифт, чтобы он стал моноширинным может только опытный художник по шрифтам. Поэтому я бы порекомендовал остановиться на шрифтах, моноширинных от рождения.
Dump the screen? [y/n]

Аватара пользователя
Sanja
Администратор
Сообщения: 791
Зарегистрирован: 24 ноя 2006, 12:25
Откуда: Новосибирск
Контактная информация:

Сообщение Sanja » 13 авг 2007, 09:43

Да, так и есть, если использовать один и тот же шрифт и для надписей, и для игрового поля. Пробовал уже. Ужас. Я о том, что в принципе можно приспособить любой понравившийся шрифт для использования на игровом поле, без дурацкой подгонки по пикселям (if ch in ['g','q','j'] then dec(y, 3); ) - вот без этой фигни. Это отрывок из моего опыта "боёв с буквами" =)

Аватара пользователя
Максим Кич
Администратор
Сообщения: 1642
Зарегистрирован: 03 дек 2006, 20:17
Откуда: Витебск, Беларусь
Контактная информация:

Сообщение Максим Кич » 13 авг 2007, 21:01

Sanja писал(а):Да, так и есть, если использовать один и тот же шрифт и для надписей, и для игрового поля. Пробовал уже. Ужас. Я о том, что в принципе можно приспособить любой понравившийся шрифт для использования на игровом поле, без дурацкой подгонки по пикселям (if ch in ['g','q','j'] then dec(y, 3); ) - вот без этой фигни. Это отрывок из моего опыта "боёв с буквами" =)
На игровом поле — пожалуйста, а подгонка по пикселям, как ты выразился, выглядит ещё веселее. Есть так называемые кернинговые пары. Т.е. определённые буквы, особенно сочетание заглавных и строчных, имеют своё взаимное расстояние. Так, между двумя буквами «о» расстояние будет стандартным, а скажем для пары «Г» и «о», «о» загоняется под «Г» (отрицательный кернинг). И во всех человеческих шрифтах существуют специальные таблицы, которые определяют такие вот ситуации. В принципе, их можно оттуда выдрать, но овчинка не стоит выделки.
Dump the screen? [y/n]

Bioworm
Сообщения: 89
Зарегистрирован: 01 фев 2007, 03:33

Сообщение Bioworm » 14 авг 2007, 21:39

Есть такая реинкарнация QBasic'a -- FreeBasic. Не будем устраивать холивары, -- скорость и качество компиляции на современном уровне, кроссплатформенность, все дела. Так вот, FB, полностью поддерживая QB, может создавать граф. экран любых размеров, и с ним можно работать, используя любые команды старого QB, в том числе Print. Фонт используется свой, автоматически вшитый в программу, полностью повторяющий старый ПЗУшный. Можно использовать свои фонты (хоть и не моноширинные) и выводить по любым координатам.

Блин, был же даже какой-то рогалик на FB, как раз с использованием псевдотекстового режима... и с исходниками. Но я ссылку забыл.

То есть я к чему... Есть режим "дос графики", есть. Но не у всех. :)

Аватара пользователя
unhappy
Сообщения: 314
Зарегистрирован: 10 июл 2007, 08:51

Re: Растровый фонт для рогуелайка (и не только)

Сообщение unhappy » 15 авг 2007, 12:06

roguE-Sadist писал(а):Рано или поздно мы все столкнёмся с отсутствием режима дос-графики (или как его зовут)
Простите, я не совсем понял.
Имеется в виду, что однажды возможность создать консоль и работать с ней исчезнут из систем windows семейства?
Мне это представляется весьма маловероятным.
Или имеется в виду что-то более высокое и тонкое?
летит ужасный бармаглот и пылкает огнём.

darhark
Сообщения: 57
Зарегистрирован: 02 май 2007, 23:18

Сообщение darhark » 15 авг 2007, 20:13

Никто не посмеет отнять у человечества консоль. А кто посмеет - окажется лицом к лицу с линухом, откуда она никогда не исчезнет ))

Да и если таки мелкомягкие ее уберут - кто-нибудь да нарисует эмулятор. Такие вещи никогда без эмуляторов не остаются.

Аватара пользователя
Максим Кич
Администратор
Сообщения: 1642
Зарегистрирован: 03 дек 2006, 20:17
Откуда: Витебск, Беларусь
Контактная информация:

Сообщение Максим Кич » 15 авг 2007, 20:56

darhark писал(а):Никто не посмеет отнять у человечества консоль.
Ну, я, допустим, пишу свой вариант консоли, потому что консоль в тру-колор — это нонсенс и никто кроме меня её для меня писать не станет. Опять же, свой набор символов. Под ДОСом я когда-то умел перерисовывать ASCII символы, а вот с виндами — увы. Но и необходимости такой не возникало.
Dump the screen? [y/n]

Аватара пользователя
unhappy
Сообщения: 314
Зарегистрирован: 10 июл 2007, 08:51

Сообщение unhappy » 16 авг 2007, 04:33

darhark писал(а):Никто не посмеет отнять у человечества консоль.
Конечно никто не посмеет ))
Максим Кич писал(а):Ну, я, допустим, пишу свой вариант консоли, потому что консоль в тру-колор — это нонсенс и никто кроме меня её для меня писать не станет. Опять же, свой набор символов. Под ДОСом я когда-то умел перерисовывать ASCII символы, а вот с виндами — увы. Но и необходимости такой не возникало.
Это уже не просто "вариант консоли", а целый "Enchanted ASCII 2D Engine" )
летит ужасный бармаглот и пылкает огнём.

Bioworm
Сообщения: 89
Зарегистрирован: 01 фев 2007, 03:33

Сообщение Bioworm » 16 авг 2007, 20:45

Максим Кич писал(а):Ну, я, допустим, пишу свой вариант консоли, потому что консоль в тру-колор — это нонсенс и никто кроме меня её для меня писать не станет. Опять же, свой набор символов. Под ДОСом я когда-то умел перерисовывать ASCII символы, а вот с виндами — увы. Но и необходимости такой не возникало.
Всё это уже есть, и отлично работает. Я писал об этом. Если не хочется переходить на нетрушный Бейсик, возьми из него граф. либу, там открытые исходники. Вроде бы на Си.

Аватара пользователя
Максим Кич
Администратор
Сообщения: 1642
Зарегистрирован: 03 дек 2006, 20:17
Откуда: Витебск, Беларусь
Контактная информация:

Сообщение Максим Кич » 16 авг 2007, 22:11

Bioworm писал(а):Всё это уже есть, и отлично работает.
Ну да. Например мой движок на этом уровне меня целиком и полностью устраивает :)
Dump the screen? [y/n]

Аватара пользователя
Maelstrom
Мастер
Сообщения: 2062
Зарегистрирован: 26 ноя 2006, 14:19
Откуда: г. Усть-Кирдык
Контактная информация:

Сообщение Maelstrom » 18 авг 2007, 03:12

Выбор шрифта? Глупый спор на ровном месте, ибо круче фикседсиса для рогаликов шрифта нет.
Айв кнгенгах Йог-Сотот

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 31 гость