-
-
Notifications
You must be signed in to change notification settings - Fork 22.8k
Simplify TranslationDomain
Workflow
#107503
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
TranslationDomain
Workflow
5cca3ad
to
8698b4d
Compare
Rebased on master to resolve conflict |
8698b4d
to
596250e
Compare
596250e
to
5ce6ae7
Compare
A small test-project to show this setup: |
Hi, thanks for your work. There are several changes in this PR: Adding the
|
So it would be better added in the
Yes, I didn't think of a scenario on which a child node should use the main domain if the parent has a custom one. But with a toggle, you have to go through every child node, it should be default to inherit the domain from the parent. But a
And they don't need to, plugins can still add there own domains.
While treating the main domain as the asses domain for voice etc, it'll work. But yes the ResourceLoader is not aware of any translation domain. I had a look into it but came to the conclusion, that it's nearly impossible without rewriting the whole scene loading logic.
Understandable, technical everything can currently be done in code without any new UI, it just makes it simpler. Having different translation for eg voice and subtiles is something I use very often in games and want to support such a feature in mine too. |
This PR introduces the ability to configure
translation_domains
in the project settings and assign atranslation_domain
per Node.This is useful in scenarios where, for example, a player may prefer different languages for subtitles and voice-over. It simplifies the localization workflow for developers.
You can define translation domains in the Project Settings:


And assign a custom translation domain per Node:
All child nodes will inherit the same translation domain, unless explicitly overridden.
For instance, if you want to use English voice-over with German subtitles, you can set the main language to English and override the subtitles domain to use German.
The changes are split across multiple commits for easier review.
Closes: godotengine/godot-proposals#11610
Closes: godotengine/godot-proposals#6254