15 августа 2010

Локализация (часть 1)

Опять забросил журнал. Дел много, да и в свободное время стремлюсь по-максимуму отдохнуть, набраться сил. Но есть одна вещь о которой не могу не написать. Сейчас для меня это - локализация программы. Что такое локализация? Ну, допустим, вы написали очень замечательную программу. И, так как вы - русскоговорящий человек, то все кнопочки, менюшки и диалоги написаны русскими буквами. И теперь вы счастливы - все вас хвалят за отличную штуку. Правда есть одно но - то и дело попадаются фразы вроде "а у вас программа только на русском языке"? И тут входит грозное слово "локализация". Что подразумевает под собой перевод программы на другие языки с целью увеличения аудитории.

Наиболее это касается сферы развлечений. Потому как человек хочет отдохнуть, а не переводить со словарем то или иное слово. Поэтому, как это ни странно, все чаще и чаще касаюсь вопроса перевода игры на другие языки. Какие? Сейчас это: английский, немецкий и польский. Не буду касаться вопроса именно перевода (хотя для меня это довольно серьезная проблема), постараюсь осветить вопросы, связанные с технической стороной изменения языка интерфейса игры.
Итак, всего я бы перечислил такие пункты игры, касающиеся привязки к языку:
  • меню; 
  • любая графическая символика с текстом; 
  • внутриигровые тексты/диалоги; 
  • ввод текста с клавиатуры пользователем;
  • динамически генерируемый текст в уровнях/опциях;
Теперь по порядку как обстоят дела у меня.
Меню - основные надписи, это просто картинки. Из текста, собираемого из атласа шрифта я бы выделил: имена пользователей в "Профиле" и названия уровней в подменю "Уровни". Все остальное - картинки, так что с этим проще: достаточно подменить картинку в ресурсах игры и пользователь будет наслаждаться родным языком.
Символика с текстом. Под этим я подразумеваю всякие надписи на гербах, клинках, маркировка оружия и другое в играх. У меня, к счастью, такого нет. Есть несколько букв на различных объектах, но об этом я даже и не думаю, так как это совсем незначительные элементы.
Тексты/диалоги - также все в картинках. Возможно, это грубовато, зато не нужно думать, как движок будет переносить слова, как накладывать всякие эффекты вроде glow или shadow. Все в графическом редакторе. Игра просто выводит спрайт, не задумываясь, какой же там язык используется.
Ввод текста с клавиатуры - используется только для ввода имени пользователя при создании профиля. Буквы выбираются из атласа шрифта.
Динамически генерируемый текст я постарался не использовать. На данный момент есть только числа, которые собираются из атласа с десятью цифрами. Там уже и эффекты, и шрифт и всё-всё подобрано, чтобы не выбиваться из общего текста. Но это только цифры, так что при переводе на другой язык, этот момент не должен быть затронут.
Если что-то забыл - поправьте меня.
Итак, по сути локализация игры будет состоять из замены картинок игры, а также изменения атласа шрифта. Какие могут быть проблемы? Во-первых, на разных языках картинки могут занимать разную область на экране. Из-за этого возможно придется перемещать, масштабировать или еще как-то задумываться об изменении картинок или даже перестройке уровней под каждый язык. Малоприятная перспектива я вам скажу. Во-вторых, обязательно возникнет сложность с набором букв на разных раскладках - ведь атлас шрифта содержит только определенные символы. Надеюсь, как-нибудь разберусь с этим. Конечно, китайские иероглифы не запихну, но немецкая и польская легко вмещаются в ASCII, так что unicode пусть пока отдохнет (и слава богу, так как программа не рассчитана на использование unicode'а). Вообще, почти все игровые тексты написаны шрифтом PT Sans. Ибо бесплатный, читабельный и содержит множество языков. Также некоторые символы выводились рукописно, затем фотографировались, редактировались и теперь в игре есть уникальный шрифт можно сказать. Надеюсь, вам всем он покажется красивым!
Так что вот такие дела. Вообще, почти доделаны все уровни, подчистил всякие баги насчет перехода между оконным и полноэкранным режимами. Осталось только подправить скрипты 15ти первых уровней, чтобы все они замечательно изменяли размеры при изменении размеров окна программы. Также сделал хинты при невозможности некоторых действий. Выглядят вроде опрятно. Один из них как раз содержит цифры, обозначающие время, через которое действие станет доступным.
Кстати, опять ищем музыканта для написания треков! Если знаете форум или еще чего, где "зависают" музыканты, которые не прочь чуточку подзаработать, участвуя в интересном проекте (вот такая вот наглая реклама) - милости прошу кинуть ссылку в комментарии!


Локализация (часть 2)

Сообщения, схожие по тематике:

0 коммент.:

Отправить комментарий