用途:在 Unity 项目中导入并配置 TextMesh Pro Essential Resources,适用于面向 Meta VR 与 Horizon OS 的项目。当出现 TMP 文字在场景中显示为粉色/品红、控制台报出 LiberationSans SDF、TMP Settings 或缺失 TMP 材质等错误、项目内首次创建 TMP 文本元素、用户要求配置 TextMesh Pro 或创建 UI 文本、Assets/TextMesh Pro/Resources/ 目录不存在时,可自动使用本技能。
主要能力:通过 unity-cli 对已打开的编辑器执行检查、导入与验证,无需编写 C#;先确认编辑器可达,多个实例运行时用 --project-path <proj> 指定项目。检查是否已导入:运行 unity command find_assets --type TMP_Settings --format json 与 unity command find_assets --name "LiberationSans SDF" --format json,依据 data.result.count 判断,count 为 0 表示未导入。find_assets 至少需要 --type / --name / --label 之一。
使用方式:确认未导入后,执行 unity command menu --path "Window/TextMeshPro/Import TMP Essential Resources"。该导入会打开模态 Unity 对话框,必须由用户手动点击 Import,无法完全自动化;应提示用户点击 Import 并等待确认,不要假定导入成功。确认后重新运行上述检查,两个资产均存在(count 非 0)才算完成,否则不要继续 UI 工作。
限制与排错:模态对话框会阻塞编辑器,请求可能超时或延迟返回,并非失败。导入后文字仍为粉色/品红时需强制重新导入 TMP 着色器,需通过 run_script 执行放在 Assets/ 之外的脚本(如 AgentScripts/ReimportTmpShaders.cs),命令为 unity command run_script --file AgentScripts/ReimportTmpShaders.cs --entry ReimportTmpShaders.Run --format json。菜单项灰色或缺失时,先检查是否已导入;若 TMP 包未安装,可用 unity command package_add --identifier com.unity.textmeshpro --confirm true --wait true --format json 并配 package_list 验证。VR 专属 UI 配置请在本技能完成导入后使用 meta-quest-ui 技能。