用途:当项目出现 TextMesh Pro 相关问题时,先定位症状类别,再给出对应的优化建议。若用户未描述具体症状,询问其属于内存/图集膨胀、视觉质量、CPU/性能、包体大小还是本地化/对齐问题。
主要能力与建议要点: 内存/图集膨胀:主字体使用静态资产并烘焙全部字形,其余用动态回退(Fallback 列表或 TMP Settings);动态图集尺寸保持 512-1024 以限制峰值内存;动态回退字体必须启用 Clear Dynamic Data On Build,否则编辑器烘焙的字形会进入播放器。 视觉质量:保持主字体与回退字体的 Padding 与 Sampling Point Size 比例一致(如 10%),否则同一行字重不一致;拉丁采样点建议 70-90,CJK 建议 36-50;字体资产 Scale 应为 1,非 1(如 0.9)会破坏标准点值计算;大字号静态字体模糊时可切换 Atlas Render Mode 为 SDF16。 性能:布局固定后关闭 AutoSize,尤其计时器、计数器、聊天等频繁变化文本;世界空间文本使用 TextMeshPro 而非 TextMeshProUGUI;频繁变化的 TMP UI 放到独立 Canvas 下以限制重建开销。 包体大小:多语言 iOS/Android 构建可评估 Atlas Population Mode = Dynamic OS(TMP 3.2.0-pre.3+),播放器不包含源字体,运行时按 Family + Style 查找设备字体;CJK 推荐 Android 用 NotoSans、iOS 用 PingFang。 对齐与样式:中英混排错位可导入 TMP Example & Extras,添加 TMP_TextInfoDebugTool,启用 ShowLines 调整 ascender/descender;多风格(斜体、描边、发光)用材质预设而非复制字体资产。
使用方式:按症状表定位问题后,套用上述规则;涉及菜单路径如 Window -> TextMeshPro -> Settings,代码属性如 enableAutoSizing。
限制:部分做法有版本或平台前提(如 Dynamic OS 需 TMP 3.2.0-pre.3+);导入 TMP Examples & Extras 在部分项目布局下可能触发无限导入循环,可关闭并重开 Unity 解决;编辑器内存采样需关闭 Include Font Data 才与设备一致。具体收费、价格与更多细节资料未提供。