### **方案二：美术工程（ArtTemplate）架构**

#### **核心目标**

- 纯美术团队维护，聚焦资源生产与合规审查。
- 资源按规范打包为AB，上传至CDN供启动器动态加载。
- 通过CI流程自动化校验和部署。

#### **目录结构**

```markdown
ArtTemplate/
├── Assets/                  
│   ├── Stories/             # 美术资源（按故事线分类）
│   │   ├── Story01/         # 单个故事资源
│   │   │   ├── Scenes/      # Unity场景文件
│   │   │   ├── Prefabs/     # 预制体
│   │   │   └── Meta/        # 元数据（版本、依赖关系）
│   │   └── ...              
│   │
│   └── Editor/              # 自定义工具
│       ├── ABPacker.cs      # AB打包工具（集成到Unity菜单）
│       └── Validator.cs     # 资源合规检查（模型面数、材质规范）
│
├── Packages/                # 依赖的UPM包（如SDK工具包）
├── Build/                   # 生成的AB包和清单
│   ├── Android/             # 平台分类
│   └── iOS/                 
│
├── CI/                      
│   ├── build_ab.sh          # 触发AB打包和校验
│   └── upload_to_cdn.py     # 上传AB包到CDN
│
└── manifest.json            # 引用SDK包和必要工具
```

#### **关键设计点**

1. **包依赖管理**
    
    - 美术工程通过 `manifest.json` 引用主工程提供的SDK包，用于AB打包和校验：
        
        ```json
        {
          "dependencies": {
            "com.inkzen.vrtheater.sdk": "https://registry.inkzen.com/com.inkzen.vrtheater.sdk.tgz",
            "com.unity.addressables": "1.19.19"
          }
        }
        ```
        
2. **资源合规与自动化流程**
    
    - **合规检查**：
        - 通过 `Validator.cs` 在Unity Editor中检查资源规范（如纹理尺寸、动画帧率）。
        - CI流程 (`build_ab.sh`) 在打包前自动运行检查，失败则阻断上传。
    - **AB打包**：
        - 使用 Addressables 或自定义 `ABPacker.cs` 按规则打包（如按场景、按资源类型）。
        - 生成AB包的同时创建清单文件（记录版本、依赖关系、文件哈希）。
3. **与主工程的协作协议**
    
    - **AB包命名规则**：  
        `{项目名称}_{资源类型}_{版本}.ab`（如 `ArtTemplate_Scene_Story01_v1.2.ab`）。
    - **元数据同步**：  
        主工程通过SDK包中的 `ResourceManager` 解析AB包元数据，动态加载时校验版本和依赖。

---

### **两工程协作流程**

4. **美术团队工作流**：
    
    - 在 `ArtTemplate` 工程中制作资源 → 运行合规检查 → 提交到Git。
    - CI自动触发AB打包 → 上传至CDN，并通知主工程有新版本。
5. **主工程工作流**：
    
    - 启动器初始化时，通过SDK包中的 `ResourceManager` 检查CDN上的AB版本。
    - 动态下载最新AB包 → 校验完整性 → 加载到场景。

---

### **扩展建议**

- **版本回滚机制**：在CDN中保留历史AB版本，主工程支持降级加载。
- **热更新**：通过SDK包实现AB差异更新（仅下载变动部分）。
- **资源加密**：在CI流程中对AB包加密，主工程下载后解密加载。

此设计确保主工程轻量化、美术工程专业化，同时通过包管理和自动化流程实现高效协作。