Привет Гость!
Ты можешь:
Войти или зарегистрироваться

Забыл пароль
Регистрация
Меню сайта
Главная страница
Моды ПК игр Форум Flash игры/журналы Помощь сайту WAP/PDA версия сайта Мы вКонтакте
Категории
Уроки по модификации java [176]
Уроки по переводу java игр [15]
Программы для компьютера [102]
Программы для телефона [85]
Модификация смартфонных игр [15]
Symbian, Android, iPhone и т.д.
Прочее [35]
Уроки по модификации ПК игр [10]
Мини-чат
Главная » Статьи » Уроки по переводу java игр

19.03.2013, 21:54

Перевод игр с рисованным шрифтом. Часть 1

Очень часто в играх можно встретить рисованные шрифты

Для чего они используются:

  • Красивее, чем системные
  • Требуют меньше памяти
  • Одинаково смотрятся на всех устройствах

    Рисованный шрифт — это картинка с нарисованными в ней буквами и символами

    Рисованный шрифт, конечно, хорошо, но доставляет множество проблем переводчику, а именно:
  • Необходимо нарисовать свои собственные шрифты
  • Необходимо изменять «индексный файл»

    Итак, как же переводить игры с рисованным шрифтом:
  • Простой метод:
    1. На место каждой буквы в оригинальном шрифте подставить свою (заменить оригинальные шрифты своими)
    2. И переводить игру

    Пример шрифта:


  • Профессиональный метод:
    1. Нарисовать свои шрифты
    2. Добавить их к оригинальным
    3. Обновить индексный файл
    4. Переводить игру

    Пример шрифта:


    Теперь немного подробнее

    На вход игры подается картинка со шрифтами, индексный файл, файл с текстом. Файл с текстом считывается игрой, и при выводе на экран символ заменяется на соответствующий кусочек картинки шрифтов, расположение которого берется из индексного файла. Непонятно? Рассмотрим еще подробнее.

    Допустим, есть картинка со шрифтами:


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

    А/17/17/0
    Б/17/17/17
    В/17/17/34

    Здесь последняя цифра — это смещение от начала изображения (начало — левый верхний угол), с которого будет «вырезана» буква длиной 17 (вторая цифра). Вырезается прямоугольник, ширина и высота которого вторая и треться цифры в индексном файле:


    Далее, если необходимо отобразить на экране строку текста, текст посимвольно заменяется на вырезанные картинки:

    Строка: АБВВАВББА

    После замены:

    Вот таким образом работают рисованные шрифты. Пример был приведен с самым простым шрифтом и индексным файлом (точно такой используется в играх jarbull)

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

    1. Попробуйте что-нибудь вместить на место англ. буквы «i» )
    2. В английском языке 26 букв, в русском — 33! Где взять еще 7 или больше, если на место буквы «i» ничего не уместить?

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

    Если соответствия букв, например, такие:

    И = N
    Г = G
    Р = R
    А = A

    Придется текст заменять не на «ИГРА», а: «NGRA»

    Для автозамены букв можно использовать программу, которая заменяет ваши обычные русские строки на нужный вид

    Плюсы метода:
  • Быстро и просто

    Минусы:
  • Текст пишется только латиницей (оригинальными буквами)
  • В игре нельзя использовать другие шрифты, например, в «об игре» название или производителя придется писать на русском

    Теперь профессиональный метод, он дается далеко не всем. Основная сложность — понять, как считывается индексный файл, где хранятся длины и смещения, исправить этот файл с учетом добавленного шрифта. (Более подробно о таком переводе в другой теме)

    Плюсы метода:
  • Профессиональный перевод, можно использовать любые шрифты
  • Обычный перевод файла с текстом «как есть»

    Минусы:
  • Высокая сложность
  • Игра может не принимать двухбайтовые символы

    Автор - wakko, его сайт.
  • Категория: Уроки по переводу java игр | Добавил: Tommy_M
    Просмотров: 3925 | Комментарии: 3 | Рейтинг: 5.0/1

    Всего комментариев: 3
    Спам
    TheOnBook   (06.04.2013 15:54) [Материал]
    Особенно перевод игр от JarBull

    Спам
    TheOnBook   (06.04.2013 15:53) [Материал]
    Теперь я понял, как переводить такие игры.

    Спам
    NaGlim   (28.03.2013 10:11) [Материал]
    Отличный урок, все подробно и понятно.

    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]

    о, привет
    Новинки
    • Файлы
    • Статьи
    • Новости

    STALCER 3-D
    Комментов: 3 | Загрузок: 13
    Rise Of Antares
    Комментов: 1 | Загрузок: 48
    РЕЗНЯ 3D: Not city of sins
    Комментов: 0 | Загрузок: 107
    Vice Multi-Player 0.1 beta RC 8-4-9-5
    Комментов: 0 | Загрузок: 23
    GTA San Andreas Beta 1
    Комментов: 1 | Загрузок: 179
    Galaxy Force 2 FINAL
    Комментов: 42 | Загрузок: 1
    Haunting abandoned mansion (color mod)
    Комментов: 0 | Загрузок: 150
    Deadly game Resident Evil 7 DLC
    Комментов: 0 | Загрузок: 227
    GTA SA FLY
    Комментов: 0 | Загрузок: 285
    GTA SA Mobile: Definitive Edition
    Комментов: 1 | Загрузок: 495

    Чат в Телеге
    Комментов: 0 | Просмотров: 98
    ODN Remake - скриншоты
    Комментов: 1 | Просмотров: 107
    O. D. N Remake
    Комментов: 0 | Просмотров: 158
    Новый сайт с мобильными загрузками - Oldfag
    Комментов: 7 | Просмотров: 1507
    Здорово и вечно 2 свободное человечество анонс номер два
    Комментов: 9 | Просмотров: 1445
    Дневник разработки "Шизофрения 3D" #2 - Концепция
    Комментов: 2 | Просмотров: 1445
    Дневник разработки "Шизофрения 3D" #1 - Общая инфа
    Комментов: 0 | Просмотров: 1402
    Случайный мод
    2526 466 10 3.3
    Статистика
    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0
    Пользователи
    Гости сайта

    [ Нас сегодня посетили ]
    При копировании материалов, желательно оставлять ссылку на этот сайт!
    © Tommy_M 2009-2024 | Хостинг от uCoz