I can't integrate unity localization with the dialog system
I can't integrate unity localization with the dialog system
Hi, I can't integrate unity localization with the dialog system, according to the guide (http://www.pixelcrushers.com/dialogue_s ... ionPackage), you need to go to Tools → Pixel Crushers → Dialogue System → Third Party → Localization → Dialogue To Localization Table, I don't have a Third Party there, how do I link localization to the dialog system?
Dialog System version 2.2.27
Dialog System version 2.2.27
- Attachments
-
- Screenshot_1.png (87.42 KiB) Viewed 3126 times
Re: I can't integrate unity localization with the dialog system
Hi,
Did you import the Plugins ► Pixel Crushers ► Dialogue System ► Third Party Support ► Localization Package Support unitypackage?
Did you import the Plugins ► Pixel Crushers ► Dialogue System ► Third Party Support ► Localization Package Support unitypackage?
Re: I can't integrate unity localization with the dialog system
I would like to clarify, I can't pinpoint exactly where these add-ons are, I'm using unity 2020.3, or maybe there's a direct link to the package?
Re: I can't integrate unity localization with the dialog system
I found everything, thank you, I thought it would be in the tools, it turned out to be in the folder
- Attachments
-
- Screenshot_1.png (13.5 KiB) Viewed 3099 times
Re: I can't integrate unity localization with the dialog system
Sounds good. I recommend following the integration instructions closely. Unity's Localization package is a little complicated.
Re: I can't integrate unity localization with the dialog system
Now I don't understand how to use it, is there a guide? The package has been installed, everything has been added, everything has been added to the localization table, too, but does not want to translate
At the same time, everything else is localized, something that is not related to the dialog system
At the same time, everything else is localized, something that is not related to the dialog system
- Attachments
-
- Screenshot_4.png (93.27 KiB) Viewed 3067 times
-
- Screenshot_2.png (70.1 KiB) Viewed 3078 times
-
- Screenshot_3.png (28.91 KiB) Viewed 3088 times
-
- Screenshot_1.png (15.43 KiB) Viewed 3088 times
Re: I can't integrate unity localization with the dialog system
Hi,
If you're having trouble changing locales and getting the Dialogue System to recognize the locale change, please import the updated Localization Support package (direct download) from the Dialogue System Extras page.
Make sure you've added a Dialogue System Localization Package Bridge component to your Dialogue Manager GameObject, and that you've assigned the Localized String Table(s) and left the Unique Field Title set to "Guid".
Change the locale using LocalizationSettings.SelectedLocale = locale. If you're doing this in a Start or OnEnable method, remember that the Localization package requires you to wait until it has initialized. Example:
If you're having trouble changing locales and getting the Dialogue System to recognize the locale change, please import the updated Localization Support package (direct download) from the Dialogue System Extras page.
Make sure you've added a Dialogue System Localization Package Bridge component to your Dialogue Manager GameObject, and that you've assigned the Localized String Table(s) and left the Unique Field Title set to "Guid".
Change the locale using LocalizationSettings.SelectedLocale = locale. If you're doing this in a Start or OnEnable method, remember that the Localization package requires you to wait until it has initialized. Example:
Code: Select all
private IEnumerator Start()
{
yield return LocalizationSettings.InitializationOperation;
LocalizationSettings.SelectedLocale = locale;
}
Re: I can't integrate unity localization with the dialog system
Thank you, the update and initialization worked, a small question, where do you advise to initialize the language localizer?
Re: I can't integrate unity localization with the dialog system
It's up to you. The bridge component will make the Dialogue System automatically use whatever you set the locale to.
I recommend initializing it in your first scene, using a Start() method like the example above. You can store the player's current localization choice in PlayerPrefs. In Start(), look up the value stored in PlayerPrefs and set the locale accordingly. Something very roughly like:
When changing locales, also set PlayerPrefs:
I recommend initializing it in your first scene, using a Start() method like the example above. You can store the player's current localization choice in PlayerPrefs. In Start(), look up the value stored in PlayerPrefs and set the locale accordingly. Something very roughly like:
Code: Select all
public List<Locale> locales;
// Set the player's selected locale when starting:
private IEnumerator Start()
{
yield return LocalizationSettings.InitializationOperation;
if (PlayerPrefs.HasKey("Locale"))
{
int index = PlayerPrefs.GetInt("Locale");
if (0 <= index && index < locales.Count)
{
LocalizationSettings.SelectedLocale = locales[index];
}
}
}
Code: Select all
LocalizationSettings.SelectedLocale = locale;
PlayerPrefs.SetInt("Locale", locales.IndexOf(locale));