完善桌宠内核基础设施
This commit is contained in:
+94
-10
@@ -102,13 +102,25 @@ shiroko/
|
||||
└── error/
|
||||
```
|
||||
|
||||
每个状态当前包含 4 帧 PNG。
|
||||
当前素材版本:`2.1.0-stable`。
|
||||
|
||||
当前帧数:
|
||||
|
||||
```text
|
||||
idle :30 帧
|
||||
talk :20 帧
|
||||
think :30 帧
|
||||
sleep :30 帧
|
||||
happy :20 帧
|
||||
drag :30 帧
|
||||
error :20 帧
|
||||
```
|
||||
|
||||
需要注意:
|
||||
|
||||
```text
|
||||
1. character.json 中 base.width/base.height 为 627x627,超过原开发文档建议的 512x512
|
||||
2. 原型阶段可以接受,但后续需要观察内存、缩放缓存和低配设备表现
|
||||
1. character.json 中 base.width/base.height 当前为 512x512
|
||||
2. 当前实现会预加载当前角色包的全部状态帧,后续需要观察内存和低配设备表现
|
||||
3. 如果项目公开发布或推送远程仓库,需要确认 shiroko 素材版权和再分发权限
|
||||
4. 版权不明确前,不应把它作为正式开源发布素材承诺
|
||||
```
|
||||
@@ -504,16 +516,88 @@ shiroko/
|
||||
|
||||
---
|
||||
|
||||
## 13. 当前未决问题
|
||||
## 13. 当前项目进度
|
||||
|
||||
截至当前工作区,项目已经完成以下内容:
|
||||
|
||||
```text
|
||||
1. 阶段 0 工程基础:
|
||||
已有 .gitignore、CMakeLists.txt、main.cpp、src/、docs/、resources/ 等基础结构
|
||||
|
||||
2. 阶段 1 最小桌宠窗口:
|
||||
已实现透明无边框窗口、拖动、右键退出、置顶切换
|
||||
|
||||
3. 阶段 2A 角色包最小读取:
|
||||
已有 CharacterPackage / CharacterPackageLoader
|
||||
能读取 shiroko/character.json 并收集状态帧路径
|
||||
|
||||
4. 阶段 2B idle 帧动画:
|
||||
已新增 AnimationClip / FrameAnimator
|
||||
当前实现会把当前角色包状态帧加载为 QPixmap 缓存,避免每帧读硬盘
|
||||
|
||||
5. 阶段 3 状态机初版:
|
||||
已新增 PetStateMachine
|
||||
已支持 idle / drag / think / talk / happy / sleep / error 的基础请求、拖动优先和缺失状态回退 idle
|
||||
|
||||
6. 阶段 4 基础设施的一部分:
|
||||
已新增 PetView,拆分显示职责
|
||||
已新增 TrayController,支持托盘显示、隐藏、退出
|
||||
已新增 ConfigManager,保存窗口位置和置顶状态
|
||||
已新增 Logger,支持文件日志和基础轮转
|
||||
```
|
||||
|
||||
当前实现与计划仍存在差异:
|
||||
|
||||
```text
|
||||
1. shiroko 角色包仍位于项目根目录 shiroko/,尚未移动到 resources/characters/shiroko
|
||||
2. 当前未实现 AI 接入、AI 配置界面和 ChatBubble
|
||||
3. 当前未实现 SettingsDialog
|
||||
4. 当前 ConfigManager 只保存窗口位置和置顶状态,尚未保存缩放、性能模式、角色选择
|
||||
5. 当前 Logger 只接入启动、退出、配置和角色包加载失败等低频日志
|
||||
6. 当前 FrameAnimator 采用当前角色包全部状态帧预加载,尚未做懒加载
|
||||
7. 本轮架构调整后尚未执行构建、编译或运行验证
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 14. 下一步建议
|
||||
|
||||
短期建议:
|
||||
|
||||
```text
|
||||
1. 在用户确认后做一次构建验证
|
||||
2. 修复构建或静态检查发现的问题
|
||||
3. 补最小 README.md,记录当前开发状态、构建方式、素材版权提示
|
||||
4. 确认 LICENSE 是否采用 MIT
|
||||
5. 在进入 AI 前,做一次桌宠内核稳定性检查:
|
||||
- 启动显示
|
||||
- idle 动画
|
||||
- 状态切换
|
||||
- 托盘隐藏 / 显示
|
||||
- 配置保存 / 恢复
|
||||
- 日志写入 / 轮转路径
|
||||
```
|
||||
|
||||
中期建议:
|
||||
|
||||
```text
|
||||
1. 补 SettingsDialog 的最小框架
|
||||
2. 补 ChatBubble
|
||||
3. 再接入 OpenAI Compatible 非流式 AI 对话
|
||||
4. AI 接入后再做 think -> talk -> idle / error -> idle 状态联动
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 15. 当前未决问题
|
||||
|
||||
后续开始写代码前,需要逐项确认:
|
||||
|
||||
```text
|
||||
1. 是否创建 .gitignore
|
||||
2. 是否创建 MIT LICENSE
|
||||
1. 是否创建 MIT LICENSE
|
||||
2. 是否创建项目根 README.md
|
||||
3. 是否把 shiroko 移动到 resources/characters/shiroko
|
||||
4. 是否使用 shiroko/preview.png 作为阶段 1 单图
|
||||
5. 是否立即创建最小 Qt Widgets 工程
|
||||
6. 是否将 build/、.vs/、CMake 生成目录全部加入 .gitignore
|
||||
7. shiroko 素材是否允许提交到远程仓库
|
||||
4. 是否保持当前“预加载全部当前角色状态帧”的策略,还是改成按状态懒加载
|
||||
5. shiroko 素材是否允许作为正式开源发布素材继续保留在仓库中
|
||||
6. 是否在下一步执行构建验证
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user