[docs][refactor]: 将旧 01~06 中文教程合并整理为 modules/frameworks 文件夹结构
- 删除 01~05 旧中文教程目录 - 将 03 核心功能教程拆分为各 framework 模块的子文档 - 06 工具脚本移入 modules/frameworks/编辑器工具/UI工具/ - 非框架内容合并进 rules/20-开发规则.md 与 rules/40-工作流清单.md - 更新所有交叉链接与文档关联表 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
144
rules/10-架构说明.md
Normal file
144
rules/10-架构说明.md
Normal file
@@ -0,0 +1,144 @@
|
||||
# 架构说明
|
||||
|
||||
> 本文档是 UnityAI / StrayFog 框架知识库的长期规则,为 Codex (AGENTS.md) 和 Claude Code (CLAUDE.md) 共同引用。
|
||||
|
||||
项目文档按三类组织:**核心运行时**、**编辑器工具**、**业务参考**。详细模块索引见 [模块索引](../modules/模块索引.md)。
|
||||
|
||||
---
|
||||
|
||||
## 分类口径
|
||||
|
||||
- **核心运行时**:支撑游戏运行的内部系统,例如实体、UI、网络、资源、事件、场景、对象池。
|
||||
- **编辑器工具**:Unity Editor 内使用的生成器、Inspector、菜单、配置工具。
|
||||
- **业务参考**:外部实际项目的业务实现示例,仅作参考,不作为框架规范。
|
||||
|
||||
---
|
||||
|
||||
## 总体分层
|
||||
|
||||
```text
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ StrayFog Framework │
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ ┌──────────────────┐ ┌──────────────────┐ ┌───────────┐ │
|
||||
│ │ GameGeneral │ │ GameHF │ │ Core │ │
|
||||
│ │ 通用工具层 │ │ 业务核心层 │ │ 基础框架 │ │
|
||||
│ └────────┬─────────┘ └────────┬─────────┘ └─────┬─────┘ │
|
||||
├───────────┼─────────────────────┼──────────────────┼─────────┤
|
||||
│ │ │ │ │
|
||||
│ ▼ ▼ ▼ │
|
||||
│ ┌─────────────────────────────────────────────────────┐ │
|
||||
│ │ Unity Engine │ │
|
||||
│ └─────────────────────────────────────────────────────┘ │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### 各层职责
|
||||
|
||||
| 层级 | 路径 | 职责描述 |
|
||||
|------|------|---------|
|
||||
| **Core 层** | `Assets/StrayFog/Core` | 核心基础框架,模拟行为系统、全局数据管理 |
|
||||
| **HF 层** | `Assets/Game/GameHFScripte/CopyToHF` | 游戏核心业务框架,资源管理、事件系统、相机管理、UI 管理等 |
|
||||
| **General 层** | `Assets/Game/GameGeneralScripte` | 通用工具层,状态机、辅助工具、扩展方法等 |
|
||||
|
||||
---
|
||||
|
||||
## 核心运行时层
|
||||
|
||||
核心运行时按技术职责命名,可以对应内部目录。
|
||||
|
||||
- **Hotfix 启动/目录**:`GameFunction/GameRoot/`
|
||||
- **实体系统**:`GameFunction/GameEntity/`、`Logic/EntityData/`
|
||||
- **UI 系统**:`CopyToHF/UIWindowMgr/`、`GameFunction/UIWindows/`、`GameMono/Scripts/UIMono/`
|
||||
- **场景系统**:`GameFunction/SceneManager/`、`GameMono/Scenes/`
|
||||
- **网络系统**:`CopyToHF/Network/`、`GameFunction/WebSocket/`、`GoogleProtobufNetwork/`(如项目使用)
|
||||
- **资源系统**:`CopyToHF/AssetBundle/`、`CopyToHF/SpriteAtlas/`、`GameHFResource/`
|
||||
- **事件系统**:`CopyToHF/Event/`、`GameFunction/Event/`
|
||||
- **对象池**:`CopyToHF/MemoryManager/`、`GameFunction/GameEntity/EntityPool/`
|
||||
- **通用框架**:`GameGeneralScripte/`、`StrayFog/Core/`
|
||||
|
||||
---
|
||||
|
||||
## 编辑器工具层
|
||||
|
||||
- `Assets/StrayFog/Editor/`:StrayFog 编辑器扩展。
|
||||
- `Assets/Editor/`:项目编辑器资源与脚本。
|
||||
- `Assets/AutoBuildScript/Editor/`:编辑器生成工具(如项目使用)。
|
||||
|
||||
---
|
||||
|
||||
## 程序集边界
|
||||
|
||||
已识别 asmdef:
|
||||
|
||||
| 程序集 | 主要路径 | 分类 |
|
||||
|---|---|---|
|
||||
| `StrayFogCore` | `Assets/StrayFog/Core/` | 核心运行时 |
|
||||
| `SFEditor` | `Assets/StrayFog/Editor/` | 编辑器工具 |
|
||||
| `GameHF` | `Assets/Game/GameHFScripte/` | 核心运行时 / hotfix 承载 |
|
||||
| `GameGeneral` | `Assets/Game/GameGeneralScripte/` | 核心运行时 / general |
|
||||
| `SFMono` | `Assets/Game/GameMono/` | 核心运行时 / Mono 桥接 |
|
||||
|
||||
---
|
||||
|
||||
## 依赖方向
|
||||
|
||||
```text
|
||||
业务功能(PVE、PVP、背包、商店等,放在外部业务参考层)
|
||||
|
|
||||
v
|
||||
核心运行时(GameRoot、GameEntity、UIWindowMgr、SceneManager、Network、AssetBundle、Event 等)
|
||||
|
|
||||
v
|
||||
通用框架 / 第三方插件(StrayFog Core、Spine、DOTween 等)
|
||||
|
|
||||
v
|
||||
Unity Engine / .NET Runtime
|
||||
|
||||
编辑器工具 -----------------> 读取/生成 核心运行时代码
|
||||
```
|
||||
|
||||
### 依赖规则
|
||||
|
||||
| 上层 | 可以依赖 | 禁止依赖 |
|
||||
|---|---|---|
|
||||
| 业务功能 | 核心运行时、通用框架 | 编辑器工具、第三方插件源码 |
|
||||
| 核心运行时 | 通用框架、第三方插件 | 具体业务功能、编辑器工具 |
|
||||
| 编辑器工具 | 核心运行时源码、生成模板 | 被运行时代码反向引用 |
|
||||
|
||||
### 说明
|
||||
|
||||
- 运行时代码不要依赖 Editor 程序集。
|
||||
- 第三方插件不应反向依赖具体玩法模块。
|
||||
- 业务功能代码按业务命名,代码目录可以仍然按框架/实现组织。
|
||||
|
||||
---
|
||||
|
||||
## 文档与代码分层对应
|
||||
|
||||
| 文档层 | 对应代码层 | 示例 |
|
||||
|--------|-----------|------|
|
||||
| `modules/frameworks/` | 核心运行时 | 实体系统、UI 系统、事件系统等 |
|
||||
| `modules/frameworks/通用框架/框架架构.md` | 核心运行时 + 规范 | StrayFog 整体架构分析 |
|
||||
| `rules/` | 规范与流程 | 开发规则、工作流清单、架构说明 |
|
||||
|
||||
---
|
||||
|
||||
## 待确认
|
||||
|
||||
- 各项目实际使用的 StrayFog 版本与目录可能略有差异,文档中路径以当前仓库描述的 `Assets/StrayFog/` 和 `Assets/Game/` 结构为准。
|
||||
- 网络系统、配置生成系统是否为所有使用 StrayFog 的项目标配,需按具体项目确认。
|
||||
|
||||
---
|
||||
|
||||
## 文档关联
|
||||
|
||||
> 当本文档发生变更时,应同步检查以下关联文档,避免信息不一致。
|
||||
|
||||
| 文档 | 关联原因 |
|
||||
|---|---|
|
||||
| [modules/frameworks/通用框架/框架架构.md](../modules/frameworks/通用框架/框架架构.md) | 实现视角的框架架构分析 |
|
||||
| [modules/模块索引.md](../modules/模块索引.md) | 模块索引是架构说明的落地入口,分类口径需一致 |
|
||||
| [rules/30-模块登记规则.md](30-模块登记规则.md) | 模块登记口径、状态定义与架构分层互相影响 |
|
||||
| [rules/20-开发规则.md](20-开发规则.md) | 程序集边界、依赖方向与开发规则互相引用 |
|
||||
| [rules/项目规则入口.md](项目规则入口.md) | 架构说明是项目规则入口索引的关键规则 |
|
||||
Reference in New Issue
Block a user