basil/vampire-like 开发日志 · 2026-06-12
仓库别名:vampire-like
本次迭代概览
今日共提交2个commit,总代码增删量为 +377 / -97,包含2项核心代码改动、1项配套文档更新。
核心改动详情
1. 接入Hud移动输入提示,补全InputModule能力
(commit: 024ec7b,作者:SepComet,提交时间:2026-06-12 14:59,共调整6个文件,增删 +244 / -26)
具体改动
- 文档补全:更新了InputModule的接入说明,补充了两个核心规则:
SpriteName字段支持用|分隔多个sprite资源键,比如WASD移动的提示可以直接写keyboard_w|keyboard_a|keyboard_s|keyboard_d,模块会自动拼接多按键图标;- 新增了
InputPromptTextUtility工具的说明,这个工具可以直接把InputModule的InputPrompt结构转为TMP可用的富文本,省去手动拼接的工作。
- 工程配置:给
.gitignore新增了/.claude目录的忽略规则,避免本地AI工作区的临时文件被误提交。 - 业务逻辑落地:在Hud模块完成了移动输入提示的全链路接入:
HudContext新增MovePrompt字段存储提示内容;HudController接入InputModule的事件订阅逻辑,实时更新提示数据;HudForm补充了移动提示的UI节点绑定,新增对应刷新逻辑。
设计考量
输入提示本身就是InputModule内置的原生能力,之前一直没有落地到业务侧,这次接入Hud移动提示只是把模块的现有能力充分利用起来,不需要额外开发重复的功能。
2. 适配多平台UI导航,改造通用按钮交互
(commit: dec1841,作者:SepComet,提交时间:2026-06-12 17:23,共调整9个文件,增删 +133 / -71)
具体改动
- 配置简化:把
UIFormType枚举中MenuForm的ID从200调整为100,同时移除了UIForm数据表中原ID200对应的冗余StartMenuForm配置。这里说明下:这次调整只是因为之前的窗体命名太冗长,顺手简化了命名和ID,没有涉及整套UI分层/分类规则的改动,不会产生大范围的连锁影响。 - 编辑器工具扩展:新增了
CommonButtonEditor编辑器脚本及对应meta文件,给通用按钮补充了编辑器侧的配置能力,提升后续按钮的配置效率。 - 代码优化:顺便精简了
DisplayItemInfoForm中的文本赋值逻辑,代码更整洁。
设计考量
这次把CommonButton改成继承自Unity原生Button,核心目标是复用原生的Navigation功能,也就是支持用方向键切换选中的按钮——主要是为了适配主机平台的UI交互需求,毕竟主机没有鼠标,全靠手柄按键来导航UI。
为了统一多平台的交互逻辑,我们还做了交互规则的对齐:
目前三个主流平台的UI操作逻辑差异很大:移动端只有点击操作;键鼠有悬停、选中、点击三种;手柄没有悬停,只有选中和点击。所以这次我们把键鼠侧的悬停和选中操作做了合并:鼠标移入按钮时就直接标记为选中状态,而不是之前的纯悬停态,这时候按方向键就可以基于当前选中的按钮做导航,操作逻辑和手柄完全对齐,移动端的操作逻辑不受任何影响,相当于用一套逻辑覆盖了三个平台的交互需求。
后续跟进关注点
- 输入提示兼容性验证:InputModule的多按键拼接提示,需要测试不同设备、不同TMP字体配置下的渲染效果,避免出现图标错位、大小不一致的问题。
- 通用按钮逻辑回归:这次改动了CommonButton的继承关系和交互逻辑,需要覆盖所有现有按钮的使用场景,避免出现点击失效、状态错乱的问题,尤其是早期开发的旧UI页面。
- 多平台导航全链路验证:需要在手柄、键鼠、移动端三个平台完整跑通菜单导航流程,确保没有平台适配的漏洞。
注:本文由模型
doubao-pro生成(草稿与终稿同模型)。