开场凌晨两点,美术同事在群里甩过来一个压缩贴图包,要求把所有 UI 贴图统一替换为 ASTC 6x6 格式。你打开工程,发现需要修改的文件散落在 12 个目录、83 张贴图,手动一张张设置 Import Settings 显然不现实。这还没完——版本库里还残留着上个版本未提交的 meta 文件冲突,刷新 AssetDatabase 之后贴图引用全部断链。类似的场景在 Unity 项目开发中几乎每周都会上演:资源改不动、批量改失控、改完引用全乱。这一切的根源,在于我们没有真正理解 Unity 的资源变更检测与批量处理机制——它不是一个"文件夹监听器"那么简单,而是一套由 GUID 标识、meta 序列化、导入器管线和增量缓存共同组成的资源系统。本文按「资源如何被标识 → 变更如何被发现 → 批量修改如何不翻车」的顺序把它讲透。一、资源体系架构:GUID 与 meta 文件为什么是一切的地基1.1 资源分类与 meta 文件的职责Unity 资产按组织方式大致分三类:场景(.unity)、预制体(.prefab),以及原生资产(贴图、模型、音频等)。每份资产在工程目录下都对应一份同名.meta文件,它是 Unity 资源管线的"灵魂文件",里面至少记录三类信息:GUID:一个 32 位十六进制字符串(128 bit),是资产在整个工程里的唯一身份证。Unity 内部所有序列化引用(.unity、.prefab、.mat