Appearance
v1.7.0
新功能
AI 诊断助手 (ADR-196)
- 主窗口内独立 LLM 诊断面板:流式对话、Markdown/HTML 渲染、思考模式
- Go 侧 SSE 客户端 + Wails 绑定,支持多服务商 (OpenAI/Ollama/自定义)
- 错误分级展示 + 可操作 advice 卡片 + 环形缓冲错误日志
- 自动连接测试 + 服务商预设 + 状态徽章
- NL 控制动作 (ADR-155):自然语言驱动模型/动作/场景操作 + 破坏性动作撤销
- 角色台词生成 (ADR-156):诊断面板台词 tab + SpeechSynthesis 朗读 + 口型驱动
水面系统
- 水下雾 + 水底焦散投影(共享 caustic 纹理)
- 色散开关 + 波高调制 + 风向/风速参数化
- 无限水面渲染 + 水面光照大修
风力物理 (ADR-200/201/202)
- 模型原生刚体风力(fork wasm 导出 2B 变体)
- vendored spr/mpr wasm + postinstall 注入
- 风力状态机 + 粒子联动
程序化动作 (ADR-207)
- 动作菜单分区重构 + 角色面板双区对称
- 集合驱动 + 子页 + 序列化可加载化
下载管理 (ADR-181)
- 下载面板 UI + 桌面下载器 DownloadAndRunInstaller
键盘导航 (ADR-153)
- 全域方向键导航:折叠面板/菜单项/滑块/开关/chips/type-row
- 相机 WSAD 渲染循环连续积分(丝滑)
- 契约制 data-nav-item 范式
渲染与画质
- 真 cel-shading 后处理 posterize + Sobel (ADR-076)
- 质量维度注册表 (ADR-174) + setEnvState 中间件化 (ADR-173)
- 金属舞台预设 + 粒子质量档位 + renderScale 像素比杠杆
重构
架构治理
- 神桶去桶化 (ADR-191):消除 @/core/utils 神桶,抽取 clamp/path/async/json/escape-html/image 叶模块
- MmdAdapter 适配层 (ADR-192):BoneFrameClock 时序契约 + PlaybackContract 切换契约
- camera.ts 拆分为 6 个聚焦子模块 (ADR-148)
- env-bridge 拆分为 gravity/persist/time-of-day 模块
- 命名治理 (ADR-212/214):驼峰→连字符统一 ~126 个 Menu ID + i18n↔Menu ID 映射公约
- 结构化反馈 API:setStatus → feedbackInfo/feedbackStatus 全量替换 (~164 处)
- 动作模块重构 7→6:左右手/左右脚独立控制
测试基础设施 (ADR-204/206)
- 大规模上帝测试文件拆分:20+ 个文件拆为 80+ 个聚焦测试
- 共享 mocks/helpers 提取,用例总数守恒
- 测试提速 44x(切断传递依赖链)
性能
- fflate 替换 JSZip(ZIP 处理提速)
- 纹理加载并行读取 + basename 共享 + LRU (ADR-189)
- FSA 扫描并发化 + 进度回调 + UI 节流增量刷新
- captureThumbnail toBlob 异步编码
- 刷新率基准上限 240 + 降级收敛
工程
- AST 批量重构工具 codemod.mjs(ts-morph)
- 代码质量门禁:ESLint 度量规则 + 覆盖率阈值 + knip/jscpd 死代码基线
- pre-push 自动修复 status/funcmap/baseline
- E2E 分级门禁:快烟阻塞 + 全量非阻塞
- npm run diagnose 全量项目诊断
- Android MPR 架构 (ADR-133):shouldInterceptRequest 注入 COOP/COEP
- i18n 语言自动识别
修复
- 星空系统深层修复(skyKey 缓存冻结 + IBL 不同步 + 渐变颠倒)
- SaveLastScene 原子写+互斥锁,堵住并发自动保存状态丢失
- 退出刷盘改同步序列化,避免 beforeunload 异步丢失
- IK 位置保护——防止センター平移传播导致脚滑
- 模型替换 toast 堆叠降级状态栏
- 网页端 FSA 扫描/纹理关联/zip 加载全链路修复
- AI 配置自动保存串行化 + 关面板 flush
- 物理分类开关落盘与恢复
统计
- ~450 次提交 (自 v1.6.5)
- 1333 文件变更
- +101884 / −83125 行