# EditorExtension Atlas 自动图集模块手册 ## 模块概述 该模块位于 `Editor/Postprocessor/Atlas`,用于维护图集配置、响应 Sprite 导入/删除、标记脏图集并执行全量生成。 ## 适用场景 - 以目录为单位自动生成 UI 图集。 - 不同平台使用不同压缩格式。 - 导入资源时自动更新图集状态。 ## 快速上手 ### 打开配置窗口 - 菜单:`Tools/Extension/图集工具/Configuration Panel` ### 全量生成 ```csharp EditorSpriteSaveInfo.ForceGenerateAll(); ``` ## 模块组成 - `AtlasConfiguration`:图集配置单例。 - `AtlasConfigWindow`:配置窗口。 - `EditorSpriteSaveInfo`:缓存、脏标记、全量生成。 - `SpritePostprocessor`:接入 Unity 导入流程。 ## 可调用 API ### 类型:`AtlasConfiguration` 源码:`Packages/com.alicizax.unity.editor.extension/Editor/Postprocessor/Atlas/AtlasConfiguration.cs` #### 公开配置字段 - `outputAtlasDir` - `sourceAtlasRoot` - `androidFormat` - `iosFormat` - `webglFormat` - `padding` - `enableRotation` - `blockOffset` - `tightPacking` - `compressionQuality` - `autoGenerate` - `enableLogging` - `enableV2` - `excludeKeywords` - `excludeFolders` 示例: ```csharp AtlasConfiguration.Instance.autoGenerate = true; AtlasConfiguration.Save(true); ``` ### 类型:`AtlasConfigWindow` #### `public static void ShowWindow()` - 作用:打开图集配置窗口。 ### 类型:`EditorSpriteSaveInfo` 源码:`Packages/com.alicizax.unity.editor.extension/Editor/Postprocessor/Atlas/EditorSpriteSaveInfo.cs` #### `public static void ConvertToSprite(string assetPath)` - 作用:把资源路径转换或校正为 Sprite 导入设置。 #### `public static void OnImportSprite(string assetPath)` - 作用:处理 Sprite 导入。 #### `public static void OnDeleteSprite(string assetPath)` - 作用:处理 Sprite 删除。 #### `public static void ForceGenerateAll()` - 作用:全量生成图集。 #### `public static void ClearCache()` - 作用:清理模块缓存。 #### `public static void MarkParentAtlasesDirty(string assetPath)` - 作用:标记资源所在父图集为脏。 ### 类型:`SpritePostprocessor` - 说明:继承 `AssetPostprocessor`,作为导入事件入口,本身无额外公开调用接口。 ## 注意事项 - 建议原图目录与输出目录严格分离。 - 开启自动生成时,排除目录和关键字要统一维护。