Search Unity

TextMesh Pro !The character Ellipsis is not available in font asset

Discussion in 'UGUI & TextMesh Pro' started by andyz, Apr 5, 2019.

  1. andyz

    andyz

    Joined:
    Jan 5, 2010
    Posts:
    2,269
    seems you need this in a font as I keep getting the warning on a static font (1.4.0) - can you not add any such essential characters on generation?
    I do not even know the hex code for this (2026?)
     
  2. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    When users select the Extended ASCII set the character is added in that list. But when a custom set is used and defined by the user it is not.

    When a font asset is dynamic, the Ellipsis character will be added as well.

    When I have time, I would like to revise how the Ellipsis and Underline character are handled.
     
  3. alternative_richie

    alternative_richie

    Joined:
    Sep 4, 2014
    Posts:
    15
    I've just updated to 2019.1.0f2 and am now getting a slew of warnings in play mode because of this. The warning didn't appear in previous versions and I didn't need the warning and don't need it now. (Image attached) Having a fallback font doesn't get rid of it.

    Anything I can do besides changing the font?
    I don't need those characters.

    Thanks in advance.
     

    Attached Files:

  4. vakabaka

    vakabaka

    Joined:
    Jul 21, 2014
    Posts:
    1,153
    Sorry, I have no idea what this means, still I hope the warnings will go away if you have looked at them :D
     
  5. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    You can disable those warnings in the TMP Settings.

    upload_2019-4-16_13-0-16.png

    When you create a font asset using the Font Asset Creator and select Extended ASCII, the Underline and Ellipsis characters are included in the font asset.

    In terms of the Warnings, most likely the option was previously enabled in the TMP Settings and suppressing these warnings.

    I do plan on revisiting the handling of the Underling and Ellipsis characters as to not require having these in every font asset.
     
    samana1407, LilGames, pren1 and 10 others like this.
  6. alternative_richie

    alternative_richie

    Joined:
    Sep 4, 2014
    Posts:
    15
    Thanks, I spotted that setting myself after visiting the warning in code, and was about to post a reply. You beat me to it. :) I didn't know that setting existed. Case closed.
     
  7. Tom-Atom

    Tom-Atom

    Joined:
    Jun 29, 2014
    Posts:
    153
    Any chance to add fallback font directly into font asset creation (like http://kvazars.com/littera/ has)? I can think of two reasons:

    1) many source fonts look nice, but are often incomplete. Often missing characters for dot, ellipses, dash, etc. can be taken from other font,
    2) we did several localizations of non-Unity games for Japanese market. We used fallback font in Littera for Japanese characters. It allowed us to keep our font and to add Japanese characters from different font required by client. As a result, we had single bitmap font. I would be happy, if I could do something similar in Unity too.

    I understand, there is fallback font option for runtime, but as fallback font uses different material, it menas more draw calls...
     
  8. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Draw calls used to be a big deal back in the days of the iPhone 3's and the likes but nowadays even on low end mobile devices, you can't really tell the difference between 5, 25 or even 100 draw calls. Obviously, there is no reason to have more draw calls than necessary provided the logic used to minimize draw calls doesn't end up being more costly than the draw calls themselves.

    Having said that, I certainly want to continue to improve the workflow and functionality of our text system.

    One of the new feature being introduced in version 1.4.2 and 2.0.2 of TMP is Font Assets able to have multiple atlas textures where new atlas textures are added as needed to accommodate a growing list of glyphs. In the Editor it will also be easy to adjust atlas size texture to optimize / reduce potential number of atlas textures in the even the initial size was too small. Ie. You picked a 512 X 512 and now realize, instead of having a few atlas textures, everything could actually fit into a single 1024 x 1204. On devices that support Shader Model 3.5 and Texture Arrays, font assets that have multiple atlas textures will result in a single combined draw call. (No firm ETA on Texture Array support in the TMP Shaders but that is something I will be adding).

    The next step from that, could be something similar to what you describe where you would still have different font assets as each font file as different metrics. However, I could see a system where multiple font assets share the same atlas texture(s) or array of textures. No ETA yet on this but definitely something I am thinking about.
     
  9. Tom-Atom

    Tom-Atom

    Joined:
    Jun 29, 2014
    Posts:
    153
    @Stephan_B - sounds great! Thanks for answer!
     
  10. better_walk_away

    better_walk_away

    Joined:
    Jul 12, 2016
    Posts:
    291
    Hi everyone,
    I had these warnings after upgrading to 2019.1.0f2. And I found that it was because I was using a custom character file to create the font asset, and it didn't include the ellipsis "…" symbol. After adding this symbol into my custom character file and restarting Unity, the warnings went away.
    However, we didn't have these warnings when we used Unity 2018.3, this issue has something to do with the lastest version of Unity 2019.1.0f2.
     
  11. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    Most likely the Disable Warning option in the TMP Settings got reset. Ie. it must have been enabled prior to the upgrade and disabled afterwards.
     
    raz_bt likes this.
  12. kerbalette

    kerbalette

    Joined:
    Apr 9, 2019
    Posts:
    4
    Thanks very much Stephen_B. This solved it for me
     
  13. stakan100gramm

    stakan100gramm

    Joined:
    May 19, 2019
    Posts:
    1
    I had same problem, just go to Window/TextMeshPro/ Import TMP essetial resourses. All errors gone
     
  14. mdimai666

    mdimai666

    Joined:
    Dec 12, 2017
    Posts:
    2
    Это помогло мне. Это появилось после обновления версии Юнити и после реимпорта все предупреждения исчезли. Мои настройки при этом сохранились.
     
    Culzean and Hayao-Gai like this.
  15. FabDynamic

    FabDynamic

    Joined:
    Jul 31, 2017
    Posts:
    36
    I didnt believe this would work but this worked instantly for me too.
     
  16. MatthewRowe

    MatthewRowe

    Joined:
    Mar 12, 2018
    Posts:
    2
    Worked for me in 2020.1.0a22.2822 Thanks.
     
    FabDynamic likes this.
  17. UDN_5c806b49-d8a0-4f67-a296-c12c91aa7396

    UDN_5c806b49-d8a0-4f67-a296-c12c91aa7396

    Joined:
    Jan 9, 2017
    Posts:
    152
    I'm having the same issue. I'm using a custom downloaded font. The issue is my font doesn't have '...'. Is this something that is generated by text mesh pro or does my font asset needs to have the '...' character to being with? If it needs to have the character, how do I edit the font file to manually add the '...' character into it?
     
  18. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    The Ellipsis character is part of font files and you should include it in your primary font asset.

    The handling of the Ellipsis character was revised in the latest releases of the TMP package previews where it can now come from the primary or any other potential fallback.

    The latest release of the TMP package is version 1.5.0-preview.11 for Unity 2018.4, version 2.1.0-preview.11 for Unity 2019.x and version 3.0.0-preview.11 for Unity 2020.x.
     
  19. UDN_5c806b49-d8a0-4f67-a296-c12c91aa7396

    UDN_5c806b49-d8a0-4f67-a296-c12c91aa7396

    Joined:
    Jan 9, 2017
    Posts:
    152
    I went into my Package Manager but I'm still on the 'v2.0.1 - 2019.3 Verified'. The project was previously created in 2019.2.9f1 and I moved over to 2019.3.9f1. I don't have the update button. How do I update?

    Edit: Ignore my silly question. I found the update button.
     
    Last edited: May 8, 2020
  20. Gillissie

    Gillissie

    Joined:
    May 16, 2011
    Posts:
    305
    I was investigating these warnings (for underline, strikethrough, and ellipses) in the hopes that I would learn exactly which characters are expected in the font for those things, so I could include them. I'm assuming that underline uses underscore (_), but not sure if the ellipses uses the ellipses (triple periods in a single character), or a period, and not sure what kind of dash is used for the strikethrough.
     
  21. Stephan_B

    Stephan_B

    Joined:
    Feb 26, 2017
    Posts:
    6,595
    The underline and strikethrough both use part of the underscore character \u002D. The underline must be present in the primary font asset.

    The Ellipsis uses \u2026. The Ellipsis character can come from the primary or any potential fallback.

    P.S. There was an issue with Warnings not being displayed which will be fixed in the next release which will be available later this week.
     
  22. Yany

    Yany

    Joined:
    May 24, 2013
    Posts:
    96
    Do you have news on the update please? I cannot avoid having tons of this ellipsis and underline warnings. Thanks.
     
  23. amoswazana

    amoswazana

    Joined:
    Nov 23, 2015
    Posts:
    5
    Just wanted to post a correction:
    I tried adding \u002D to a font that would show the error "The character used for Underline is not available in font asset", but it would not help with the error.
    I then noticed that the unicode for underscore is actually \u005F and not \u002D.
    After adding the correct unicode everything seems to work fine.

    So just a heads up for anyone that is handling code from 4 years ago.
     
  24. ChillyRolande

    ChillyRolande

    Joined:
    Apr 20, 2019
    Posts:
    5
    Thank you! For anyone wondering TMP Settings will be found in your Text Mesh Pro Folder under Resources...TMP Settings.asset
     
    jf065d likes this.