# AIGame UI 自动生成方案总览 > 参考 `AIC#Project/Client/Assets/Doc` 的 JSON→Prefab 与图集约定,按本仓库(竖屏微信小游戏、YooAsset、HybridCLR)落地。 ## 1. 两套互补流水线 | 流水线 | 产物 | 文档 | | --- | --- | --- | | **A. JSON → Prefab** | 业务 UI Prefab | `Doc/Rule/UIGenerationRules.md`、`UIGenerationPrompt.md` | | **B. UI 图集 / 切图** | Common 控件贴图 +(后续)SpriteAtlas | `Doc/UI_*_Set.md`、`Doc/UI_Atlas_Pipeline.md` | 风格与控件视觉:`Doc/Design/UI_Design_Principles.md` + `Doc/Design/ui_design.jpg`。 ## 2. 端到端流程(推荐) ```text 需求说明 -> Agent 读 UIGenerationPrompt + DesignPrinciples + UI_Normal_Set/UI_Pic_Set -> 缺切图时:ResourceCreate.md 文生图(>1K 用 gpt-image-2-vip)→ Tools/output -> 切图导入 Assets/Bundles/UI/Texture/Common(或业务子目录) -> 写 Doc/UIPrefabCreater/{UIName}.json -> Unity 获焦自动转换 / Tools/UI 菜单 -> 生成 Assets/Bundles/UI/Prefab/{UIName}.prefab -> HotUpdate C# 按 bindings/events 接管 -> 登记 Doc/ResDesc_Picture.md(贴图)等 ``` ## 3. 本项目路径(与 AIC# 差异) | 用途 | AIGame 路径 | | --- | --- | | Unity 工程 | `AIClient/` | | UI JSON | `Doc/UIPrefabCreater/`(仓库根,不在 Assets 内) | | 通用贴图 | `AIClient/Assets/Bundles/UI/Texture/Common/` | | 业务贴图 | `AIClient/Assets/Bundles/UI/Texture//` | | Prefab | `AIClient/Assets/Bundles/UI/Prefab/` | | 转换器 | `AIClient/Assets/Editor/UI/JsonUIPrefabBuilder.cs` | | 自动转换 | `AIClient/Assets/Editor/UI/JsonUIAutoConvert.cs` | | 热更 UI 代码 | `AIClient/Assets/HotUpdate/Scripts/UI/`(待扩展) | | 设计分辨率 | **竖屏 `[1080, 1920]`**(非参考项目的 2048×1024) | ## 4. Unity 菜单 - `Tools/UI/Generate Prefab From JSON...` - `Tools/UI/Generate All Prefabs From JSON` - `Tools/UI/Convert Changed JSON Prefabs Now` - `Tools/UI/Auto Convert JSON On Focus`(默认开启) Prefab / 导入设置须遵守 `UNITY-GUIDE.md`:Agent 不手改 `.prefab`,用本转换器或 Pipeline。 ## 5. 图集分级 | 文档 | 用途 | | --- | --- | | `Doc/UI_Simple_Set.md` | 24 切片最小集 | | `Doc/UI_Normal_Set.md` | 38 切片常规集(推荐起步) | | `Doc/UI_Pic_Set.md` | ~48 切片完整常用集 | 生成脚本与模型规则见 `ResourceCreate.md`。 ## 6. 首期不做 / 后续 - 首期:JSON→Prefab + Common 切图目录约定;Sprite 可先单图导入。 - 后续:按目录自动打 `.spriteatlas`、AtlasEnum、YooAsset 原图绑定(见 `Doc/UI_Atlas_Pipeline.md`)。 - 转换器未实现:`Toggle` / `Slider` / `Scrollbar` / `TMP_Dropdown`(可用 Image+Button 骨架)。