Search Unity

TextMesh Pro TextMeshPro with I2 Localization issue

Discussion in 'Unity UI (uGUI) & TextMesh Pro' started by kabumere, Apr 1, 2018.

  1. kabumere

    kabumere

    Joined:
    Oct 2, 2016
    Posts:
    31
    Having another issue relating to these two assets together, want to see if anyone else has encountered it/reproduced it:

    I have started a new project for prototyping where I'm using the latest versions of TextMesh Pro and I2 Localization from the Asset Store. Whenever I attach a 'Localize' component to a TextMesh Pro object, I get these two warnings during play mode: "
    No script asset for LocalizeTarget_TextMeshPro_UGUI. Check that the definition is in a file of the same name." and "
    The referenced script on this Behaviour (Game Object '<null>') is missing!". The more TextMesh Pro objects I have with a Localize component on them, the more of these warnings I get each play.

    This occurs only with TextMesh Pro. Using the regular Unity Text object with a Localize component does not produce the warning. Also, my older projects that use the latest I2 Localization asset but an older version of TextMesh Pro do NOT produce this warning.

    For reproducing the issue, note that I am using: Unity 2017.3.1f1 on Windows 10 with I2 Localization version 2.8.4 f1 and TextMesh Pro version 1.0.56.0b3 (at least according to the Asset Store).

    Edit: Also note that in my older projects that don't have this issue, TextMesh Pro Editor DLL version is: TextMeshPro-2017.2-1.0.56-Editor. For the projects having this issue, TextMesh Pro Editor DLL version is: TextMeshPro-2017.3-1.0.56-Editor.
     
  2. kabumere

    kabumere

    Joined:
    Oct 2, 2016
    Posts:
    31
    For anyone else experiencing this: this was indeed a bug with the latest Asset Store version of I2 Localization. If you have your invoice number available, contact inter.illusion@gmail.com and he'll give you access to the latest beta version which has a fix for it. Using it now and all seems to be in order. If you're uneasy about beta versions, I believe the developer has said a stable version will likely hit the Asset Store this month (April). Cheers!
     
    Mauri and Stephan_B like this.
  3. konsnos

    konsnos

    Joined:
    Feb 13, 2012
    Posts:
    93
    Hey, I have the same issue. My version of I2 Localization is 2.8.6 f2 which was released 14 May. It seems that it's not fixed yet.
     
  4. kabumere

    kabumere

    Joined:
    Oct 2, 2016
    Posts:
    31
    I have version 2.8.5 f1 from sometime last month (April) and it's fixed in this version. It must have been re-introduced later.

    I would contact the dev using the email I wrote above and let them know.
     
  5. konsnos

    konsnos

    Joined:
    Feb 13, 2012
    Posts:
    93
    I did for another issue I have before 7 days, but unfortunately I haven't received any answer so far, to follow up with a new question. I hope he is working on it.
     
  6. kaspyar

    kaspyar

    Joined:
    Feb 26, 2017
    Posts:
    4
    Unity: 2017.4.6.f1
    I2 Localization: 2.8.7 f1
    Platform: UWP

    Component TextMeshPro UGUI / field Text Input Box was not determined by Localize component.
    In Target field of Localize component wroten Prefab, and text doesn't change on changing the language.
    In the Android platform, it works correctly.
     
  7. ykleban

    ykleban

    Joined:
    Feb 22, 2017
    Posts:
    15
    Have the same issue in 2.8.11 f1 and Unity 2018.2.20. Though everything seems to work fine.
     
    Last edited: Mar 1, 2019
  8. LesBloom

    LesBloom

    Joined:
    Feb 2, 2017
    Posts:
    81
    Just an FYI for anyone else finding this thread. I contacted the author and was told this:

    I have seen that error, when there are left over files from the installation. Most of the time when upgrading I2 Localization from a very old version to a latest.

    The solution is to do a clean install.
    - Delete the I2\Localization folder
    - Install the plugin again

    That removes left over files and you shoudn't get the error.
    Also, all your localization data is in the I2Languages.asset, so deleting the I2 folder will not make you loose any data.

    Hope that helps, and please let me know if the problem persists.
    <name removed by me>​

    So far it has solved this issue for me.
     
    Inter-Illusion likes this.
  9. konsnos

    konsnos

    Joined:
    Feb 13, 2012
    Posts:
    93
    The problem persists for me. I'm using Unity 2017.4. Deleted files for both TextMeshPro and I2 and updated them to the latest versions, to no avail.
     
  10. vanderFeest

    vanderFeest

    Joined:
    Apr 12, 2017
    Posts:
    2
    Have the problem here still as well, in Unity 2018.3.7.
     
  11. Stephan_B

    Stephan_B

    Unity Technologies

    Joined:
    Feb 26, 2017
    Posts:
    3,516
    iflo likes this.
  12. Evgeno

    Evgeno

    Joined:
    Sep 8, 2014
    Posts:
    3
    Unity 2019.1.0. The problem is still there.
     
  13. kpprt

    kpprt

    Joined:
    Jul 30, 2016
    Posts:
    5
    Switching to TextMeshPro 1.4.1 via PackageManager with Unity 2018.4 solved the problem for me (for now). With TMPro 1.3.0 I had some weird behaviour going on with TextMeshProUGUIs being dirtied constantly in a Prefab. Maybe that is related to this problem. I use other Plugins (e.g. Doozy UI) as well, so I cannot tell for sure where the source of the problem is.
     
  14. talyh

    talyh

    Joined:
    Dec 2, 2016
    Posts:
    20
    Running into this issue too.
    Unity 2019.1.4.f1, TMPro 2.0.1, I2Loc 2.8.12 f1.

    Can anyone indicate whether this leads to real issue or is it just the annoying messages in editor?
     
  15. talyh

    talyh

    Joined:
    Dec 2, 2016
    Posts:
    20
  16. Inter-Illusion

    Inter-Illusion

    Joined:
    Jan 5, 2014
    Posts:
    472
    Did you tried the solution described above?
    When "No script asset for LocalizeTarget_TextMeshPro_UGUI" it means that the script that handles the connection between TMPro and I2 Localization is either not compiled correctly or its name doesn't match the cs file.

    Normally, this happens when users are using an older version of I2 Localization and then update the latest one. At some point some of the plugin files were renamed and if you just update the latest, those files could be conflicting with the new ones.
    - Solution: do a clean install of I2 Localization as described above.

    Another thing that can make this to happen is if I2 Localization was moved to the plugins folder or added assembly definition files to compile it into a separate dll.
    Said that, in every case I have seen this error, it has been because of updating from an old version and not doing a clean re-install.

    Well, that script controlls the TMPro and I2 Localization, so, if you are using TMPro, then it wont be localized. But if you are just using unity Text, then it should work fine.

    If the prefab was saved in the old version, it may still reference to the old script file.
    I2 Localization will automatically detect and correct that problem. But after it fixes it, the prefab needs to be resaved, so that the error doesn't show any more.
    Just open the prefab, verify that the Localize target is matching your target (e.g. TMPro, Unity Text, etc), then save the prefab.

    Hope that helps,
    Frank
     
  17. adslitw

    adslitw

    Joined:
    Aug 23, 2012
    Posts:
    146
    I've just hit this problem, Unity 2018.4.4f1, TMPro 1.4.1. Totally fresh install of I2... Any ideas @Inter-Illusion?

    Edit: I deleted the i2 folder and reinstalled and the problem has resolved. However it was absolutely a totally clean import, so something definitely didn't work the first time around!
     
    laeusnb likes this.
  18. Raubi

    Raubi

    Joined:
    Apr 3, 2015
    Posts:
    12
    Same here with Unity 2019.2.2f5. Just imported I2, set everything up according to the tutorial. However, I've created a asmdef, since I'm using that in my project. Now I get

    "No script asset for LocalizeTarget_TextMeshPro_UGUI. Check that the definition is in a file of the same name."

    as well. Would be nice, if @Inter-Illusion could check that.