Unreal engine 4 русский язык. Русификация документации движка! Static Mesh Editor - редактор статичных мэшей

Здравствуйте, меня зовут Дмитрий. Я занимаюсь созданием компьютерных игр на Unreal Engine в качестве хобби. Пару дней назад я написал статью о Ну раз вы написали диалоги для игры то наверно вы захотите их перевести на другие языки. В этой статье я опишу как работает модуль предназначены для локализации текста в Unreal engine.

Итак сначала надо включить его Editor Preferens → Experemental → Localization Dasbord. К сожалению модуль до сих пор является экспериментальным.

После этого надо перезагрузить Unreal engin. Как только вы это сделаете в меню Windows появится пункт Localization Dasbord. Заходим в него и видим вот что.

Здесь надо добавить новую культуру (Add new culture) и выбрать Native язык, это язык на котором написан ваш текст в моем случае это английски у вас наверно будет Русский.

Теперь надо определить откуда Unreal engine будет извлекать текст.

Во первых нужно сказать что Unreal engine будет извлекать текст из всех переменных тип которых FText (собственно это главное отличие этого типа от FString). Если у вас есть переменная FText но вы не хотите чтобы Unreal engine переводил этот текст, то это можно отключить:


Включив переключатель Gather from text files мы сможем извлечь текст из с++ файлов. По умолчанию текст будет извлекаться из ".h", ".cpp", ".ini" Естественно переменные в этих файлах должны быть определены как FText в с++ это делается так:

/* Top of File */ #define LOCTEXT_NAMESPACE "Your Namespace" ... FText TestHUDText = LOCTEXT("Your Key", "Your Text") ... #undef LOCTEXT_NAMESPACE /* Bottom of File */
или так

FText TestHUDText = NSLOCTEXT("Your Namespace", "Your Key", "Your Text")
Включив переключатель Gather from Packages, Unreal engine будет извлекать текст из ассетов. По умолчанию стоит ".uasset" и ".umap".

У меня все выглядело так:

Теперь можно нажать кнопку «Gather text» и Unreal engine создаст файлы локализации. Переводить можно или прямо в Unreal engine или импортировать файл перевода и использовать редактор ".po" файлов. Я использовал Poedit.

Важно: После того как вы завершите перевод не забудьте нажать кнопку «Compile Text». А то перевод не появится в игре.

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

Void AHUD_StoryGraph::ChangeLocalization(FString target) { FInternationalization::Get().SetCurrentCulture(target); }
В качестве target нужно подставлять сокращения en - Английски, ru - Русский и так далее.

Важно: Чтобы увидеть перевод, игру надо запускать в Standalon Game режиме, если запустить во вьпорте то перевод вы не уведите.

При упаковке игры нужно зайти в Project setting → Packing и выбрать Include prerequisites, выбрать языки которые вы включите в игру и изменить параметр Intarnacialization support с English only на All.

Собственно все, теперь вы сможете локализовать вашу игру на все языки мира.

Вообще, если оценивать ситуацию в целом, Эпики перевели часть документации на китайский, японский и корейский, т.е. вероятно у них уже выработан какой-то подход к переводу и они ему следуют. Скорее всего этот подход отличается от коллективного перевода через единую онлайн платформу и именно поэтому они не воспринимают этот подход, т.е. просто не хотят менять свой подхот, т.к. вероятно в него уже много вложено и т.д., короче сидят и отмалчиваются, тянут резину.
Понятно, что сейчас Unreal Engine может себе это позволить, по одной простой причине - они предоставляют исходники движка для пользователей. Одно это просто убивает всех конкурентов на месте, хотя бы потому, что даже если мы ничего не смыслим в программировании и исходники нам для внедрения своего кода особо и не нужны, но тем не менее остаётся возможность компиляции движка на определённой машине. Как известно компиляция довольно интеллектуальная штука, в её процессе учитывается железо на котором она собственно происходит, таким образом скомпилировав движок на каком-нибудь последнем процессоре c последней видеокартой мы получим оптимизированный движок именно под эту платформу и соответственно игры, созданные на этом движке будут тоже оптимизированы под неё, ну а если компьютер будет другой, то и оптимизация будет другая, так можно вообще выпустить несколько вариантов игр, оптимизированных под разные конфигурации.
Однако в плане графики, как известно, Unreal Engine находится на уровне CryEngine, так что в этом плане они вполне взаимозаменяемы. У Края, как мы знаем, появились финансовые трудности, да ещё на фоне этого половина сотрудников переметнулась в проект Star Citizen, они им там движок переделывают под неограниченную вселенную. Короче у Края проблемы и он уже не на первом месте, на первое место явно вырвался Unreal Engine. Что для нас в этом хорошего, так это то, что Край теперь просто вынужден быть менее глухим и слушать пользователей, кстати активность форума у них на сайте это подтверждает, реально общественность стали больше слушать. И ещё хорошо то, что они ещё и не думали переводить свою документацию, т.е. у них вообще никаких начинаний в этом отношении нет, таким образом, они могут лучше воспринять идею создания такой платформы, нужно только предложить. Я это всё исключительно в плане альтернативы! Просто понятно, что Unity конечно хорош, и то что они переводят документацию тоже отлично, но всё-таки он не так хорош как Unreal, а вот CryEngine на альтернативу очень даже тянет и если там захотят организовать такую платформу перевода, то можно спокойно отстать от Эпиков и перейти туда. Это я к тому, что с подобным можно обратиться и к нашему комьюнити CryEngine...

Работа по созданию игры в UE4 реализована через набор редакторов . Каждый из них представляет собор рабочую область для решения специфических задач.Behavior Tree Editor

(как и информация, лежащая в основе данного списка) с уважением и почтением взяты с соответствующей страницы официальной документации Unreal Engine 4 .

Level Editor - Редактор уровней

Это основной редактор, в котором создается игровой уровень: здесь размещается геометрия сцены, актеры, blueprint"ы, системы частиц и все остальное, что может составлять уровень.

Этот редактор открывается по умолчанию при создании или открытии проекта.

Material Editor - редактор материалов

Служит для создания и редактирования существующих материалов.

Материалы - ассеты проекта, отвечающие за внешний вид объектов. Они описывают такие свойства поверхностей объекта, как цвет, способность отражать и пропускать лучи света, свечение, шершавость поверхности и т. п.

Blueprint Editor - редактор схем

Blueprint "ы (или, по-русски, «схемы ») - это специальный вид ассетов, позволяющих реализовывать программную логику игры без использования C++. По сути, это программирование, реализованное при помощи системы нодов, где каждая отдельная нода (узел) представляет собой некоторую функцию, операцию или данные.

Редактор схем позволяет как раз работать с такими сущностями.

Behavior Tree Editor - редактор дерева поведений

Во многом этот редактор аналогичен редактору схем. При помощи системы нодов здесь можно описывать поведение ИИ-персонажей (искусственного интеллекта).

Persona Editor - редактор персонажа

В этом редакторе вы будете работать со скелетными ассетами, объектами, и анимационными схемами, а также с любыми другими анимационными ассетами.

Вообще, практически всю работу с анимацией в UE4 вы будете выполнять именно в этом редакторе.

Cascade Editor - каскадный редактор («водопад»)

Здесь вы работаете с каскадными системами частиц UE4 (Cascade Particle Systems).

Результаты работы можно сразу наблюдать в интерактивном окне просмотра.

UMG UI Editor - редактор пользовательского интерфейса

Unreal Motion Graphics User Interface Editor - редактор пользовательского интерфейса моушен-графики Unreal. Он служит для создания различных типов пользовательских итерфейсов, вроде интерактивных интерфейсов внутреигровых устройств или системных меню.

Matinee Editor - монтажный редактор

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

В частности, с помощью этого редактора можно создавать игровые синематики, какие-либо динамические игровые события или изменять свойства актеров с течением времени.

Sound Cue Editor - редактор звуковых сигналов

Вся работа со звуком в Unreal Engine производится в этом редакторе.

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

Paper2D Sprite Editor - спрайтовый редактор

Этот редактор предоставляет возможность создавать и настраивать отдельные спрайты.

Спрайты - это объект-плоскость со спроецированной на его поверхность текстурой. Фактически спрайты представляют собой наиболее быстрый и простой способ отборажения 2D-изображений в UE4

Paper2D Flipbook Editor - редактор спрайтовой анимации

Этот редактор нужен для реализации спрайтовой анимации. Он работает с последовательностями спрайтов, расставляя их как кадры, сменяющие друг-друга с течением времени (по аналогии с флип-блокнотом: когда вы рисуете на каждой странице кадр анимации, а затем быстро их пролистываете - отсюда и название “flipbook”).

Physics Asset Tool Editor - редактор инструментов ассетов физики

В документации вы можете встретить сокращение PhAT. Этот редактор позволяет работать с ассетами физики, использующимися совместно со скелетными объектами геометрии (Skeletal Meshes).

Static Mesh Editor - редактор статичных мэшей

Мэши, или (как их часто переводят на русский), «каркасные объекты», представляют собой объект, состоящий из многоугольников.

Этот редактор работает как раз с ними, позволяя настроить их внешний вид, параметры физического взаимодействия, UV-развертки и также управлять уровнями детализации (LOD - level of details).

Media Player Editor - редактор медиафайлов

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

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

Just one more copyright note: All images and information, that was used to create this article, was respectfully taken from the original UE4 documentation"s page .

Здравствуйте, меня зовут Дмитрий. Я занимаюсь созданием компьютерных игр на Unreal Engine в качестве хобби. Пару дней назад я написал статью о редакторе квестов и диалогов. Ну раз вы написали диалоги для игры то наверно вы захотите их перевести на другие языки. В этой статье я опишу как работает модуль предназначены для локализации текста в Unreal engine.

Итак сначала надо включить его Editor Preferens → Experemental → Localization Dasbord. К сожалению модуль до сих пор является экспериментальным.

После этого надо перезагрузить Unreal engin. Как только вы это сделаете в меню Windows появится пункт Localization Dasbord. Заходим в него и видим вот что.

Здесь надо добавить новую культуру (Add new culture) и выбрать Native язык, это язык на котором написан ваш текст в моем случае это английски у вас наверно будет Русский.

Теперь надо определить откуда Unreal engine будет извлекать текст.

Во первых нужно сказать что Unreal engine будет извлекать текст из всех переменных тип которых FText (собственно это главное отличие этого типа от FString). Если у вас есть переменная FText но вы не хотите чтобы Unreal engine переводил этот текст, то это можно отключить:


Включив переключатель Gather from text files мы сможем извлечь текст из с++ файлов. По умолчанию текст будет извлекаться из ".h", ".cpp", ".ini" Естественно переменные в этих файлах должны быть определены как FText в с++ это делается так:

/* Top of File */ #define LOCTEXT_NAMESPACE "Your Namespace" ... FText TestHUDText = LOCTEXT("Your Key", "Your Text") ... #undef LOCTEXT_NAMESPACE /* Bottom of File */
или так

FText TestHUDText = NSLOCTEXT("Your Namespace", "Your Key", "Your Text")
Включив переключатель Gather from Packages, Unreal engine будет извлекать текст из ассетов. По умолчанию стоит ".uasset" и ".umap".

У меня все выглядело так:

Теперь можно нажать кнопку «Gather text» и Unreal engine создаст файлы локализации. Переводить можно или прямо в Unreal engine или импортировать файл перевода и использовать редактор ".po" файлов. Я использовал Poedit.

Важно: После того как вы завершите перевод не забудьте нажать кнопку «Compile Text». А то перевод не появится в игре.

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

Void AHUD_StoryGraph::ChangeLocalization(FString target) { FInternationalization::Get().SetCurrentCulture(target); }
В качестве target нужно подставлять сокращения en - Английски, ru - Русский и так далее.

Важно: Чтобы увидеть перевод, игру надо запускать в Standalon Game режиме, если запустить во вьпорте то перевод вы не уведите.

При упаковке игры нужно зайти в Project setting → Packing и выбрать Include prerequisites, выбрать языки которые вы включите в игру и изменить параметр Intarnacialization support с English only на All.

Собственно все, теперь вы сможете локализовать вашу игру на все языки мира.



В продолжение темы:
Windows

Часть вторая : "Важнейшие характеристики каждого семейства процессоров Intel Core i3/i5/i7. Какие из этих чипов представляют особый интерес" Введение Сначала мы приведём...

Новые статьи
/
Популярные