Reproduction steps:
1. Open the attached “IN-102480.zip” project
2. Open the “SampleScene” (Assets > Scenes)
3. From the Hierarchy, select the "Text (TMP)" GameObject (under Canvas/Text (TMP))
4. In the Inspector, observe “Text Input” field has custom rich text styles
5. Enter Play mode
6. Observe the text
Expected result: All of the text is rendered with the assigned “LuckiestGuy” Font Asset
Actual result: All of the text except for “Lorem” (no style) and “Dolor” (Italic style) is rendered with the default TMP Font
Reproducible with: 6000.0.35f1, 6000.0.49f1, 6000.1.3f1, 6000.2.0b2
Not reproducible with: 2022.3.62f1, 6000.0.34f1
Reproducible on: Windows 11, macOS 15.4.1 (M3 Max) (User reported)
Not reproducible on: No other environment tested
Notes:
- For this issue to happen, you must have a default font assigned to the TMP Settings that has other font assets as reference for the font weights (and/or italics). Then, when you assign a totally different font to the TMP Component and try to apply a font weight or italic, it will fallback to the default TMP font if it has a valid reference. In the example, the italic font was not provided, and so it didn't fallback to the default TMP font
- Issue also reproduces without rich text and applying bold or italic styles directly
- The issue also reproduces in 2022.3.62f1 if the “com.unity.textmeshpro 3.2.0-pre.12” version of the package is forced