ASCII GoldSrc Fonts (платформы WON и Steam)

Half-Life 2 собрала более 35 наград в номинации 'Игра года' и разошлась тиражом более 4 млн экземпляров.
Ответить
Сообщение
Автор
Аватара пользователя
Vit_amiN
Супермодератор
Супермодератор
Сообщения: 2509
Зарегистрирован: 01.02.2007
Откуда: Over Old Hills
Благодарил (а): 15 раз
Поблагодарили: 91 раз

#1 Сообщение 17.05.2009, 20:14

Содержимое файла ReadMe.txt

Код: Выделить всё

============================================================================================
ВЕРСИЯ ПРОЕКТА: N.N.N (ВКЛЮЧАЕТ ШРИФТЫ ФОРМАТОВ WAD BITMAP LUMP TYPE 0x46, TARGA И TRUETYPE)
============================================================================================

1. Общие сведения

Во все шрифты указанных выше форматов была добавлена поддержка национальных символов кодовой
страницы CP1251 (ASCII-коды с 0x80 по 0xFF), в т.ч. кириллицы (спецификация кодовой страницы
CP1251: ftp://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT).

Оригинальные версии шрифтов расположены в папке CP1252, модифицированные — в папке CP1251.


2. Поддерживаемые игры

• Condition Zero: Deleted Scenes (Steam)
• Day of Defeat (WON, Steam)
• Gunman Chronicles (WON)
• Half-Life (WON, Steam)
• Half-Life: Blue Shift (WON, Steam)
• Half-Life: Firearms (WON, мод v3.0+)
• Half-Life: Opposing Force (WON)
• Half-Life: Redemption (WON)
• Half-Life: Wanted! (WON)

Также поддерживаются игры, использующие шрифты перечисленных выше.


3. Известные проблемы

• Во всех версиях игр символы с ASCII-кодами с 0x80 по 0xFF при отображении с помощью Targa-
  шрифтов (VGUI) являются моноширинными. (В качестве индекса массива у vgui::Font передаётся
  знаковый char; фактически, при отрицательном значении ASCII-кода поведение не определено.)

• Во всех версиях игр при значении 0 переменной bitmapfonts (включает использование TrueType
  вместо Targa-шрифтов) на элементах VGUI неверно отображаются символы с ASCII-кодами с 0x80
  по 0xFF. (По той же причине.)

• Во всех версиях игр символ с ASCII-кодом 0xFF (строчная буква «я») воспринимается как байт
  конца текста элементами VGUI, использующими функцию READ_STRING. (Особенности реализации.)

• В Steam-версиях игр при активном русском языке интерфейса размер символов TrueType-шрифтов
  меньше, чем при любом другом. (Особенности реализации.)
  Для устранения данного несоответствия приложены 2 Scheme-файла: TrackerScheme_ru.res — для
  использования с русским языком (перед использованием переименовать в TrackerScheme.res), и
  TrackerScheme.res — для использования с любым другим языком.

• В Steam-версиях игр невозможно отобразить символы с ASCII-кодами с 0x80 по 0x9F при помощи
  TrueType-шрифта титров (секция Scheme/Fonts/Legacy_CreditsFont в файле TrackerScheme.res).
  (Особенности реализации.)

• В Steam-версии игры Half-Life: Blue Shift невозможно корректно отобразить символы с ASCII-
  кодами с 0x80 по 0xFF при помощи TrueType-шрифта титров, когда текст в titles.txt сохранён
  в кодировке Windows-1251. (Некорректное использование vgui::ILocalize.)
  Чтобы частично устранить данную проблему (предыдущая сохранится), смените кодировку текста
  с Windows-1251 на Windows-1252 и сохраните файл titles.txt в формате UTF-8. Внимание: если
  токены из файла titles.txt продублированы в файле(ах) локализации *_<язык>.txt, отобразить
  их текст корректно не получится.

============================================================================================
Над анализом форматов, дорисовкой и компиляцией шрифтов работал Vit_amiN, http://csmania.ru/
============================================================================================

Во избежание путаницы в понимании того, где движком GoldSrc используются какие шрифты, стоит провести чёткую границу между платформами WON и Steam, поскольку отличия в области используемых шрифтов значительны.

1. WON. На этой устаревшей платформе используются 3 типа шрифтов:
  • TrueType: используются только в основном меню игры: шрифт Arial.
  • Targa: шрифты в виде файлов TGA. Все шрифты имеются в архиве.
  • Bitmap: точечные шрифты в WAD. Все шрифты имеются в архиве.
2. Steam. Данная платформа актуальна, она использует 2 типа шрифтов:
  • TrueType: TTF используются почти для всего внутриигрового текста.
  • Targa: шрифты в виде файлов TGA. Все шрифты имеются в архиве.
Движок GoldSrc на платформе Steam использует шрифты TrueType вместо точечных шрифтов из файлов WAD (т.е. из файла gfx.wad используются только точечные надписи «Загрузка» и «Пауза», а файл fonts.wad не используется вовсе). Переход на TrueType стал причиной многих проблем, в т.ч. проблемы с кодовыми страницами при использовании VGUI1 — вместо Windows-1251 (DEFAULT_CHARSET при условии использования русского языка для программ, не поддерживающих Юникод) жёстко используется Windows-1252 (ANSI_CHARSET). Эта проблема решается использованием файлов platform\resource\fonts\*.ttf (шрифты с принудительным отображением символов кодовой страницы Windows-1252 в Windows-1251 посредством изменённой cmap-таблицы) и platform\resource\TrackerScheme.res (схема GUI, подключающая упомянутые шрифты). Преимущество данного метода заключается в том, что изменённые шрифты не требуется регистрировать (устанавливать) в систему, поскольку движок выполняет их временную (на период работы приложения hl.exe) регистрацию самостоятельно.

Ссылка на загрузку актуальной версии
Последний раз редактировалось Vit_amiN 26.03.2019, 16:44, всего редактировалось 23 раза.

Ответить