抽象成管线 找出运行时和编辑器共有的模块 把这些模块做成组件 运行时和编辑器分别实例不同的组件 #### 编辑器 Provider - 加载配置 - 生成地图 - 创建地块 - 地块渲染提供器 - 普通Texture图 - 编辑器的白膜 - 创建摆件 - 创建碰撞盒 - 创建怪物 - 创建标志 #### 运行时 - 加载配置 - 生成地图 - 创建地块 - 地块渲染提供器 - 普通的Texture图 - 创建摆件 - 渲染 - 注册到管理 - Behaviour - 地图初始化回调 - 进入房间回调 - 创建碰撞盒 - 注册到管理 - 地图初始化回调 - 进入房间回调 - 创建怪物 - 注册到管理 - 地图初始化回调 - 进入房间回调 - 创建标志 - 注册到管理 - 地图初始化回调 - 进入房间回调