hy-farm/docs/unity-migration-status.md
2026-05-29 19:54:56 +08:00

67 lines
2.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 -> 接口 -> 玩家数据”的最短链路。