Jump to content
Zone of Games Forum
Memoric

Автопереводчик для Unity игр XUnity.AutoTranslator

Recommended Posts

Апну тему скринами из разных игр с использованием autotranslator:

Banner of the Maid (китайский →  русский): https://imgur.com/a/LNHYwsV

Banner of the Maid (китайский → английский): https://imgur.com/a/LDdyhHK

We the Revolution (английский → русский): https://i.imgur.com/D3hJUo1.png

NITE Team 4 (английский → русский):  https://i.imgur.com/K4KPip1.png

Tales of the Neon Sea (английский → русский):  https://imgur.com/a/y7oztQg

 

Share this post


Link to post

Чуть обновил тупые сборки в стиле кинул что-нибудь в игру, тупа жмякнул на всё и уже гамаешь.
https://disk.yandex.ru/d/PkI0TPJFlk3IZA

Edited by DragonZH
что забанили ссылку, теперь другая
  • Like (+1) 4

Share this post


Link to post
11 минут назад, Amigaser сказал:

Ещё вопрос. Есть ли коллекция SDF шрифтов с кириллицей для автопереводчика? Например, с обводкой или тенью у символов? У меня есть только 
- arialuni_sdf_u2019 (18)
- notosanscjk-regular_sdf
- sofiasansextracondensed_light_sdf
Они не очень подходят для игры, надписи в игре плохо видно, да и крупноваты они (кроме sofiasansextracondensed_light_sdf, но он слишком тонкий. :( ). Или может есть туториал как сделать эти шрифты самому? 
И можно ли в меню использовать один шрифт, а в игре другой?

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

Share this post


Link to post
2 часа назад, Дмитрий Соснов сказал:

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

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

Share this post


Link to post
Posted (edited)
21 час назад, Amigaser сказал:

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

Обводку символов и тень-это скорее всего надо чтобы сами шрифты такими были. То есть ищи по репозиториям готовые подходящие для тебя шрифты и потом конвертируй самостоятельно их в формат TextMeshPro. Или создай сам, то что тебе надо с нуля, благо описаний как это делать в сети есть…

Цвета текста можно вручную задать в файле переведённого текста с помощью тега <color> 

Пример: <color\='grey'>TIMESTAMP</color>

А например  размер текста в строке можно изменить с помощью тега <size>

Пример: </size>\n<size\='20'> или <size=25%>…<\size>

Edited by Дмитрий Соснов

Share this post


Link to post
Posted (edited)

Спасибо. Но я нашёл другой способ. Я открыл нужный SDF шрифт в UABEA и там в ассете с типом Material нашёл в массиве в карте m_Floats два параметра "_OutlineSoftness" и "_OutlineWidth" и заменил в них параметр second с нуля на два и единицу соответственно. Сохранил как новый шрифт и подкинул в игру. И обводка появилась. И очень хорошая с размывкой. По сути там можно и другие параметры рендеринга подправить. Например, цветовую карту m_Colors со всеми цветами для элементов шрифта.
Хотя надо и попробовать создать в Unity шрифт из ttf для себя с нуля. Ещё раз спасибо за подсказки. :) 

Edited by Amigaser
  • Thanks (+1) 1

Share this post


Link to post
25 минут назад, Amigaser сказал:

Спасибо. Но я нашёл другой способ. Я открыл нужный SDF шрифт в UABEA и там в ассете с типом Material нашёл в массиве в карте m_Floats два параметра "_OutlineSoftness" и "_OutlineWidth" и заменил в них параметр second с нуля на два и единицу соответственно. Сохранил как новый шрифт и подкинул в игру. И обводка появилась. И очень хорошая с размывкой. По сути там можно и другие параметры рендеринга подправить. Например, цветовую карту m_Colors со всеми цветами для элементов шрифта.
Хотя надо и попробовать создать в Unity шрифт из ttf для себя с нуля. Ещё раз спасибо за подсказки. :) 

Если вам будет не сложно, то выложите получившиеся у вас шрифты тут, в виде ссылки на файл на облачном хранилище\файлообменнике...

Share this post


Link to post
Posted (edited)
1 час назад, Amigaser сказал:

Ну, я пока только один шрифт подправил — srbija_sans_sdf. Несжатый:
https://disk.yandex.ru/d/r_QcWbBtGuEhig
Сжатый:
https://disk.yandex.ru/d/U2iv7Ks2KwAfxA
Если сделаю другие шрифты с обводкой — выложу.

Спасибо! Если не сложно, поищите для редактуры и конвертации шрифты максимально покомпактные (узкие)  по ширине и наиболее читаемые, например по типу okuda https://ofont.ru/category/26

Главное чтобы полученные шрифты  были  TextMesh Pro: версии  1.4.0. Так как на некоторые тут выложенные sdf шрифты, загрузчик почему то ругается, что они не подходят под версию TextMesh Pro: 1.4.0

Edited by Дмитрий Соснов

Share this post


Link to post
Posted (edited)

BepInEx  AutoResize.

  1. в конфиге BepInEx включить параметр: EnableTextPathLogging=True
  1. создать текстовой файл (UTF-8): resizer.txt в папке с переводом (в папке ...\Translation\ru\Text)
  1. в файле resizer.txt прописываешь путь (взятый из файла логов) и размер шрифта,  есть три варианта пиксель, процент и авто.
  2.  необходимо проверить пути к игровым объектам в игре, используя различные опции конфигурации, предоставляемые этим плагином, или используя плагин типа Unity Runtime Editor. 

Выглядеть будет примерно так: CharaCustom/CustomControl/CanvasDraw=ChangeFontSizeByPercentage(0.5) 

например если сделать вот так /Handler/UICanvas/Topbar Window/Topbar Menu=AutoResize(true, 22, 64) , то авторесайз будет работать на все что входит в Topbar Menu и тд...

Команды, управляющие автоматическим изменением размера AutoResize: AutoResize(bool enabled, minSize, maxSize): В параметре enabled указывается, следует ли включить авторазмер. Два последних параметра являются необязательными. minSize, maxSize Возможные значения: [сохранять, нет, любое число].

Commands that control auto-resizing: AutoResize(bool enabled, minSize, maxSize): Where enabled control if auto-resize behaviour should be enabled. The two last parameters are optional. minSize, maxSize possible values: [keep, none, any number].

 

Edited by Дмитрий Соснов

Share this post


Link to post
Posted (edited)
5 часов назад, Дмитрий Соснов сказал:

Главное чтобы полученные шрифты  были  TextMesh Pro: версии  1.4.0. Так как на некоторые тут выложенные sdf шрифты, загрузчик почему то ругается, что они не подходят под версию TextMesh Pro: 1.4.0

У меня есть только TMP шрифты из этой темы (38 шт.), они все скомпилированы версией TextMesh Pro 1.1.0 в Unity 5.x.x 2020.3.48f1. Но у меня MelonLoader и AutoTranslator их загружает без проблем и не ругается и в игре они отображаются. Впрочем, указанную версию TextMesh Pro в ассете можно поменять. Через тот же UABEA.  Вот только размер текста у большинства шрифтов маловат в игре. Пока не понимаю что надо сделать, чтобы увеличить размер текста в игре. Изменение размера текста с помощью тэгов в файле перевода работает, но как-то муторно каждую строчку обрабатывать таким образом. :( Есть ли какой-нибудь путь для MelonLoader, чтобы комплексно решить проблему ресайзинга текстов в игре?

Edited by Amigaser

Share this post


Link to post

Я хз что делать 
[01:11:13.883] [Il2CppAssemblyGenerator] Cpp2IL.Core.Exceptions.LibCpp2ILInitializationException: Fatal Exception initializing LibCpp2IL! ---> System.FormatException: Invalid or corrupt metadata (magic number check failed)
[01:11:13.884] [Il2CppAssemblyGenerator]    ╨▓ LibCpp2IL.Metadata.Il2CppMetadata.ReadFrom(Byte[] bytes, UnityVersion unityVersion) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\LibCpp2IL\Metadata\Il2CppMetadata.cs:╤Б╤В╤А╨╛╨║╨░ 65
[01:11:13.886] [Il2CppAssemblyGenerator]    ╨▓ LibCpp2IL.LibCpp2IlMain.Initialize(Byte[] binaryBytes, Byte[] metadataBytes, UnityVersion unityVersion) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\LibCpp2IL\LibCpp2IlMain.cs:╤Б╤В╤А╨╛╨║╨░ 149
[01:11:13.887] [Il2CppAssemblyGenerator]    ╨▓ LibCpp2IL.LibCpp2IlMain.LoadFromFile(String pePath, String metadataPath, UnityVersion unityVersion) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\LibCpp2IL\LibCpp2IlMain.cs:╤Б╤В╤А╨╛╨║╨░ 201
[01:11:13.887] [Il2CppAssemblyGenerator]    ╨▓ Cpp2IL.Core.Cpp2IlApi.InitializeLibCpp2Il(String assemblyPath, String metadataPath, UnityVersion unityVersion, Boolean allowUserToInputAddresses) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\Cpp2IL.Core\Cpp2IlApi.cs:╤Б╤В╤А╨╛╨║╨░ 56
[01:11:13.888] [Il2CppAssemblyGenerator]    --- ╨Ъ╨╛╨╜╨╡╤Ж ╤В╤А╨░╤Б╤Б╨╕╤А╨╛╨▓╨║╨╕ ╨▓╨╜╤Г╤В╤А╨╡╨╜╨╜╨╡╨│╨╛ ╤Б╤В╨╡╨║╨░ ╨╕╤Б╨║╨╗╤О╤З╨╡╨╜╨╕╨╣ ---
[01:11:13.889] [Il2CppAssemblyGenerator]    ╨▓ Cpp2IL.Core.Cpp2IlApi.InitializeLibCpp2Il(String assemblyPath, String metadataPath, UnityVersion unityVersion, Boolean allowUserToInputAddresses) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\Cpp2IL.Core\Cpp2IlApi.cs:╤Б╤В╤А╨╛╨║╨░ 68
[01:11:13.889] [Il2CppAssemblyGenerator]    ╨▓ Cpp2IL.Program.MainWithArgs(Cpp2IlRuntimeArgs runtimeArgs) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\Cpp2IL\Program.cs:╤Б╤В╤А╨╛╨║╨░ 502
[01:11:13.889] [Il2CppAssemblyGenerator]    ╨▓ Cpp2IL.Program.Main(String[] args) ╨▓ C:\Users\Sam\RiderProjects\Cpp2IL\Cpp2IL\Program.cs:╤Б╤В╤А╨╛╨║╨░ 444

выдает такую ошибку кто подскажить как исправить ? 

Share this post


Link to post
4 часа назад, Amigaser сказал:

У меня есть только TMP шрифты из этой темы (38 шт.), они все скомпилированы версией TextMesh Pro 1.1.0 в Unity 5.x.x 2020.3.48f1. Но у меня MelonLoader и AutoTranslator их загружает без проблем и не ругается и в игре они отображаются. Впрочем, указанную версию TextMesh Pro в ассете можно поменять. Через тот же UABEA.  Вот только размер текста у большинства шрифтов маловат в игре. Пока не понимаю что надо сделать, чтобы увеличить размер текста в игре. Изменение размера текста с помощью тэгов в файле перевода работает, но как-то муторно каждую строчку обрабатывать таким образом. :( Есть ли какой-нибудь путь для MelonLoader, чтобы комплексно решить проблему ресайзинга текстов в игре?

Лучший способ, это конечно сам шрифт править и делать новый бандл со шрифтом. Но можно в метриках шрифта менять параметр m_Scale для изменения размера шрифта.

  • Upvote 1

Share this post


Link to post
8 часов назад, mixa_pulemet сказал:

Но можно в метриках шрифта менять параметр m_Scale для изменения размера шрифта.

Поменял в ассете MonoBehavior в m_FaceInfo параметр m_Scale на 1,8. Всё стало с размером шрифта в игре просто замечательно. Но всё же, после “включения” обводки, сами буквы стали как-бы “лесенкой”. Не знаете как сделать сглаживание, какой параметр за это заведует? 

Share this post


Link to post

Решил собрать все TMP SDF шрифты из темы в одном архиве. Там же список всех шрифтов и как они выглядят (fonts_list.docx). И два переделанных мной шрифта с обводкой — srbija_sans и okuda. Всего 40 шрифтов.
https://disk.yandex.ru/d/wgAFBSJrQiXHNg

  • Like (+1) 1
  • Thanks (+1) 1
  • Upvote 1

Share this post


Link to post
2 часа назад, Amigaser сказал:

Поменял в ассете MonoBehavior в m_FaceInfo параметр m_Scale на 1,8. Всё стало с размером шрифта в игре просто замечательно. Но всё же, после “включения” обводки, сами буквы стали как-бы “лесенкой”. Не знаете как сделать сглаживание, какой параметр за это заведует? 

а можно вас попросит более  подробный гайдик сделать?

Share this post


Link to post
2 часа назад, Amigaser сказал:

Поменял в ассете MonoBehavior в m_FaceInfo параметр m_Scale на 1,8. Всё стало с размером шрифта в игре просто замечательно. Но всё же, после “включения” обводки, сами буквы стали как-бы “лесенкой”. Не знаете как сделать сглаживание, какой параметр за это заведует? 

Нужен скриншот, чтобы понять о чём вы. Скорее всего тип рендера шрифта у вас растровый и нужно делать новый TMP с типом рендера SDFAA или другим векторным. Но это не точно.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



Zone of Games © 2003–2024 | Реклама на сайте.

×