Skip to content

MikuMikuAR v1.3.3

发布日期:2026-07-13 类型:功能更新版

本版亮点

  • ADR-097 资源库浏览与恢复决策汇总(含模型记忆):将原先散布于 ADR-066/090/094/095 的「本地模型资源库浏览与恢复」决策统一汇总,并新增 RecentModels 模型记忆 与「更换模型接入模型记忆」两项能力。library-core.ts 重构,打开模型浏览器时按记忆恢复上次位置/模型,替换模式保持替换状态并自动返回模型列表。
  • ADR-096 通用 Helper 单点收敛(已完成):将散落于 renderer / env / camera / outfit 等处的 5+ 套 clamplerp、19 处 Color3 三元组构造、手写深拷贝、3 套时间戳 helper 统一收敛至 core/utils.ts 与新建 core/color-helpers.ts,消除重复实现、统一语义。
  • ADR-095 路径归一化与归属判定统一:合并两套并存的路径归一化实现,将至少 7 处手写「是否在某根下 / 求相对路径」边界判定收敛为 isUnderRoot / computeLibraryRef 工厂,修复大小写漏判与 GetLastBrowseDir 返回单字符串被误解构为 'C' 的 bug。
  • 资源库路径边界加固:拒绝 .. 路径逃逸与跨盘串台,提升导入/恢复安全性。
  • 环境功能层级增强:环境功能层级控制与 UI 联动进一步完善(天空/地面/水面/风/云/阴影/雾)。

主要改动

类型内容ADR
feat资源库浏览与恢复决策汇总 + 模型记忆(RecentModels)ADR-097
feat环境功能层级控制与 UI 联动
refactor通用 Helper 单点收敛(clamp/lerp/Color3/深拷贝/时间戳)ADR-096
refactor路径归一化与归属判定统一(isUnderRoot 工厂)ADR-095
fix资源库路径边界加固,拒绝 .. 逃逸与同盘串台ADR-095
fixGetLastBrowseDir 返回单字符串被误解构为 'C'ADR-095/097
docsADR-066/090/094/095 状态更新 + ADR-097 新增 + buglog
testconfig.test.ts 同步 ADR-095 路径归一化ADR-095

技术栈

组件版本
Go1.25.0
Wailsv3.0.0-alpha2.105
Node.js24
Babylon.js9.14.0

已知限制

限制说明
Windows 端目录选择器SelectDir 仍受 Wails v3 CanChooseDirectories 缺陷影响,弹出文件选择器而非目录选择器(待修复,见 ADR-023 §4)
Android localStorage 容量场景自动保存写 localStorage,Android 有 5MB 限制,大场景可能写满
AudioContext 惰性创建Android WebView 需用户交互后才能创建 AudioContext,首次无声音频可能失败

构建验证

  • ✅ Go build — 通过
  • ✅ TypeScript — 通过
  • ✅ Vite production build — 通过

更新方式

Windows:下载 MikuMikuAR-1.3.3-windows-amd64.exe,覆盖安装即可。

Linux:下载 mikumikuar-1.3.3-linux-amd64,赋予执行权限后运行。

Android:下载 MikuMikuAR-1.3.3-android-arm64.apk 安装(Release 签名版本)。

升级注意

  • 配置文件(.mmascene / 用户设置)向后兼容,无需迁移。
  • 若出现异常,可尝试 Ctrl+Shift+R 重置本地缓存后重启。