Немного про особенности локализации и разработки шрифта для Total-Reload

Привет всем!

Появилась минута рассказать про особенности локализации, разработки шрифта для игры над которой в последнее время работает наша команда. Кстати, вот скрин из нее:

Спойлеры и прочее запикселизовано :)
Спойлеры и прочее запикселизовано :)

Ранее писал немного по этой теме здесь: Наш опыт разработки шрифтов и локализации игры

Поехали!

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

Не под контролем оказались некоторые детали, а именно: как быть в случае локализации на китайский, японский, корейский и, скажем, арабский языки, иврит. Последние два, кстати, мы пока не реализовываем по причине:

  • статистика стима говорит о нецелесообразности перевода игры на эти языки

Добавляем японский, корейский и китайский шрифты!

Довольно щепетильно отношусь к шрифтам. Нет, я далеко не профессионал и не мастер в шрифтах, но в последнее время стал замечать что то ножки у некоторых в вывесках 'Д' расположены выше чем должны быть, то растояние между буквами не настроено (кернинг), в итоге при чтении текста позникает ощущение, что едешь машиной по кочкам. А эту надпись я читаю вообще довольно часто. Здесь, как мне кажется, "с" ну очень близко сместили к "л":

Вас не смущает кернинг в этом предложении?
Вас не смущает кернинг в этом предложении?

Может есть какое-то правило и у "СЛ" все сделано по феншую... Был бы очень признателен если бы читатель показал что я ошибаюсь и с расстоянием все хорошо.

Когда подбирал кириллический, латинский шрифты, то столкнулся с рядом проблем:

  • шрифтов много, но бесплатные не подходят для проекта (подробнее про это в статье, которую приводил ранее)
  • платные стоят дороговато (100 000 руб. за шрифт не предел)

То есть плюс-минус подходящего бесплатного кириллического и латинского шрифта найти не удалось. Попадалось либо что-то неподходящее, либо что-то дорогое. Про китайский, японский и прочие шрифты тогда речи не шло.

Существуют бесплатные китайские, японские и корейские шрифты. И да, они вроде как подходят для проекта!

То ли мои стандарты качества сильно просели (надеюсь это не так) после того как я долго ковырялся как бездомный на разных шрифтовых свалках, то ли еще по какой-то причине (нежелание/отсутсиве времени разрабатывать шрифт на 100к иероглифов), оказалось что в сети есть куча бесплатных шрифтов с иероглифами.Что вызывает интерес... Кириллические и латинские шрифты содержат около 100 букв (строчных, прописных и цифр) + спецсимволы (",./?\!@#$^&*(_=+~ и др.) В сумме примерно около 200 символов. И все подходящее нам стоило обычно дорого.

С другой стороны насчитывают около 50 000 китайских иероглифов, 12 000 корейских, и вроде около 20 000 японских. Поправьте если не прав. То есть шрифты с иероглифами в десятки, сотни раз более "объемные" и... бесплатные. Это же чудо из чудес!

Как мы интегрируем иероглифы.

На самом деле, как оказалось, разработка игры - это разработка средств для разработки :)

В случае интеграции иероглифов нужно начинать с самоего начала, с интеграции текстов. Для интеграции текстов пришлось разработать:

1) систему текстовых файлов с разными версиями перевода:

Так выглядят текстовые файлы в редакторе Unity3D
Так выглядят текстовые файлы в редакторе Unity3D

Игровые тексты для разработчика представляют из себя файлы, содержащие разные варианты перевода. В процессе смены языка из таких файлов подтягиваются нужные версии перевода.

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

Красным выделены тексты с проблемами
Красным выделены тексты с проблемами

3) Также пристуствуют инструменты поиска всех используемых символов в шрифте и поиска слов, фраз. В общем в игру пришлось встроить небольшую систему обработки текстовых файлов :) И эту систему никто не увидит кроме разработчиков!

Немного про особенности локализации и разработки шрифта для Total-Reload

Вся эта система позволяет продуктивно обрабатывать текстовое содержимое игры.

Как мы импортиовали 50 000 иероглифов.

Вот и настал ключевой момент. На самомо деле столько иероглифов импортировать не нужно. Теоретически импортировать может и можно, но на практике этого делать не нужно. Я оставил на ночь систему TextMeshPro заниматься импортом всех иероглифов, но она и утром не закончила процесс. То ли от того что зависла, то ли еще по какой-то причине.

Почему импортировать все не нужно? Очевидно, это захламление памяти. Нужно копировать только то, что используется в игре. Как раз одна из систем обработки текстовых файлов позволила узнать какие иероглифы мы используем. Таким образом вместо 12 000 корейских иероглифов было определено, что игра использует около 600. Экономия 20X!

Немного про особенности локализации и разработки шрифта для Total-Reload

Пока я еще не добрался до импорта китайского и японского, но подозреваю что будет пара подводных камней с которыми мы точно справимся и о которых, возможно, расскажу позже :)

Надеюсь статья была интересной, до связи :)

Здесь вы можете перейти в соответствующий магазин и скачать демо-версию игры: https://torshock.com/total-reload-links

22
11
5 комментариев

Это на самом деле чистое совпадение :)

1

Если в вашей игре подразумевается возможность ввода пользовательского текста (например для названия сохранений или имя профиля), то предварительный импорт используемых в локализации иероглифов уже не прокатит.

Для поиска шрифтов рекомендую https://fonts.google.com/
Там можно быть уверенным, что лицензию на шрифт никто не вырезал из архива (вы могли думать, что какой-то шрифт бесплатный, но недобросовестные сайты могут вам пиратку контрафактную подсунуть).

Ну и для CJK шрифтов рекомендую шрифты Noto - в нем есть все необходимые символы, начертания и стили. Ну и лицензия достаточно свободная.

1

Спасибо за совет!
"Там можно быть уверенным, что лицензию на шрифт никто не вырезал из архива (вы могли думать, что какой-то шрифт бесплатный, но недобросовестные сайты могут вам пиратку контрафактную подсунуть)." - особенно это оказалось полезным.

1