67 lines
2.0 KiB
Markdown
67 lines
2.0 KiB
Markdown
# Unity 重构启动状态
|
||
|
||
## 已完成
|
||
|
||
- 新建 Unity 工程骨架:`unity/FarmUnity`
|
||
- 添加 Unity 包配置:`Packages/manifest.json`
|
||
- 添加运行时 asmdef:`FarmGame.Runtime`
|
||
- 添加 UI asmdef:`FarmGame.UI`
|
||
- 添加 Editor asmdef:`FarmGame.Editor`
|
||
- 导入白鹭原始资源:
|
||
- `Assets/FarmGame/Art/RawEgret/FarmerResource`
|
||
- `Assets/FarmGame/Art/RawEgret/CurrentResource`
|
||
- 添加核心运行时脚本:
|
||
- `GameBootstrapper`
|
||
- `GameContext`
|
||
- `EventBus`
|
||
- `ApiClient`
|
||
- `PlayerModel`
|
||
- `LandModel`
|
||
- `AuthService`
|
||
- `ConfigService`
|
||
- `NumberFormatter`
|
||
- `PanelView`
|
||
- `UiManager`
|
||
- `LoginScenePresenter`
|
||
- 添加白鹭导入工具:
|
||
- `FarmGame/Egret/Scan Raw Resources`
|
||
- `FarmGame/Egret/Slice Atlas Jsons`
|
||
- `FarmGame/Egret/Scan EXML Structures`
|
||
- `FarmGame/Egret/Generate Login Prefab`
|
||
- `FarmGame/Egret/Generate Core EXML Prefabs`
|
||
|
||
## 环境说明
|
||
|
||
当前机器没有可用 Unity 命令行:
|
||
|
||
```text
|
||
Unity not found
|
||
unity not found
|
||
```
|
||
|
||
因此本轮没有执行 Unity 编译和 Editor 导入校验。后续需要用 Unity Hub 打开 `unity/FarmUnity`,等待包和资源导入完成。
|
||
|
||
## 打开 Unity 后的操作顺序
|
||
|
||
1. 打开 `unity/FarmUnity`。
|
||
2. 等待依赖包导入完成。
|
||
3. 执行菜单 `FarmGame/Egret/Scan Raw Resources`。
|
||
4. 执行菜单 `FarmGame/Egret/Slice Atlas Jsons`。
|
||
5. 执行菜单 `FarmGame/Egret/Scan EXML Structures`。
|
||
6. 执行菜单 `FarmGame/Egret/Generate Login Prefab`。
|
||
7. 新建启动场景,创建空物体 `GameBootstrapper` 并挂载同名脚本。
|
||
8. 设置 Canvas Scaler 为 `640 x 1136`。
|
||
|
||
## 下一步
|
||
|
||
第一条可玩闭环:
|
||
|
||
1. 用生成器产出 `LoginSceneSkin.prefab`。
|
||
2. 手工校准登录页布局。
|
||
3. 检查 `LoginScenePresenter` 自动绑定的 `inpKey`、`inpPw`、`btnLogin`。
|
||
4. 调通 `AuthService.LoginAsync(username, password)`。
|
||
5. 登录成功后保存 `PlayerModel` 到 `GameContext`。
|
||
6. 显示空主场景和顶部资源栏。
|
||
|
||
当前重点不是批量转全部页面,而是先验证“EXML -> Prefab -> 接口 -> 玩家数据”的最短链路。
|