Search Issue Tracker
Fixed in 3.0.4
Fixed in 1.5.4, 2.1.4
Votes
0
Found in [Package]
3.0.3
Issue ID
1303957
Regression
No
TextMeshPro Exceptions thrown and text disappears because text has changed and not been reparsed
How to reproduce:
1. Open the attached project ("TMProUpgradeBug.zip")
2. Notice KeyNotFoundException
Expected results: Text is seen in the Canvas
Actual results: Text disappears because the text has not been re-parsed
Reproducible with: TMP 2.1.3 (2019.4.19f1), TMP 3.0.3 (2020.1.17f1)
Could not test with: 2018.4.31f1, 2021.1.0b5, 2021.2.0a3 (After upgrading/downgrading can't reproduce with current project)
Workaround:
In OnPreRenderCanvas()
Change this :
if (m_isInputParsingRequired || m_isTextTruncated)
{
#if TMP_PROFILE_ON
Profiler.BeginSample("TMP - ParseInputText()");
#endif
ParseInputText();
TMP_FontAsset.UpdateFontFeaturesForFontAssetsInQueue();
#if TMP_PROFILE_ON
Profiler.EndSample();
#endif
}
To This:
ParseInputText();
TMP_FontAsset.UpdateFontFeaturesForFontAssetsInQueue();
This change has to be done in both TMPro_Private.cs and TMPro_UGUI_Private.cs files. This change should be done in the Global Package Cache otherwise, closing / re-opening Unity will revert the change.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- URP Realtime reflection probes do not update when RenderProbe() is being called once per second
- Addressable terrain shader variants are stripped from the Player
- [iOS] Debug.Log() appears as <private> in Console app
- UI stays in the background when it is disabled in simulator
- A wrong log file is attached when project is launched with a "-logFile" command line argument
Resolution Note (fix version 3.0.4):
Fixed in TMP 3.0.4 which is available in Unity
Resolution Note (fix version 2.1.4):
Fixed in TMP 2.1.4 which is available in Unity 2019.1.0a1 and above
Resolution Note (fix version 1.5.4):
Fixed in TMP 1.5.4 which is available in Unity 2018.4