5.7 KiB
5.7 KiB
CqOOwMxQWicqCGkEiCMcj9BWnzb
Source: https://dianchukeji.feishu.cn/wiki/CqOOwMxQWicqCGkEiCMcj9BWnzb
一.工作内容概述
- 搭建音频系统,并使用 WOOSH 和 SUNO 制作、接入基础音效与 BGM;
- 完善设置功能,加入音乐、音效、振动、色盲模式、坐标显示等设置项,并与音频、局内交互和棋盘显示逻辑联动;
- 完成新手教程场景、引导流程、教程棋盘和教程结算逻辑的初步接入。
二.音频系统搭建与资源接入
音频系统设计思路
搭建了项目的音频管理系统。整体采用“配置驱动 + 场景感知”的方式来组织音频逻辑。 业务逻辑中不直接关心具体播放哪个音频文件,只需要通过统一的音频接口触发播放,不直接绑定具体音频文件。 这样做的好处是后续调整成本比较低。比如某个按钮音效不合适,只需要替换配置里的资源路径,不需要在各个业务脚本里到处改代码。后续如果新增更多音效,也可以继续按照同样的方式扩展。 本次音频系统主要完成了以下几个基础能力:
- 支持主界面、局内等不同场景配置不同 BGM;
- 支持每个音效资源单独配置音量;
- 音频播放节点挂载在持久化节点上,避免场景切换时 BGM 被意外打断;
- 接入设置系统,支持音乐、音效开关实时控制播放状态;
- 在棋盘操作、按钮点击、胜负反馈等关键交互节点接入基础音效。
WOOSH 与 SUNO 音频资源制作
音效部分主要使用 WOOSH 制作,集中用于 UI 点击、棋盘操作、正确反馈、错误反馈等高频交互场景。 目前接入的音效包括:
- 按钮点击音效;
- 棋盘格标记音效;
- 找到正确目标时的反馈音效;
- 选择错误目标时的反馈音效。 BGM 部分使用 SUNO 生成,主要包括主界面、局内两类音乐。主界面 BGM 更偏轻松活泼,用于营造休闲感;局内 BGM 则尽量降低存在感,避免影响玩家思考; 当前音效和 BGM 主要用于完成工程接入和基础听感验证,后续还需要结合真机体验继续调整音量、时长和循环效果。
三.设置功能实现
设置系统设计思路
实现了设置系统。整体思路是将设置数据和设置界面拆开:设置面板只负责展示和交互,真正的设置状态由独立的设置服务统一管理。 这样处理的原因是,设置项不应该只存在于 UI 面板内部。例如振动开关关闭后,局内点击逻辑需要能直接读取这个状态;音效开关关闭后,音频系统也需要立刻响应;色盲模式和坐标显示开启后,棋盘渲染逻辑也需要同步更新。 通过独立的设置模型和事件同步机制,可以让 UI、音频系统、局内逻辑、棋盘显示逻辑都读取同一份状态,避免各模块之间状态不一致。 目前设置系统支持的基础项包括:
- 音乐开关:控制背景音乐是否播放;
- 音效开关:控制 UI 与局内交互音效是否播放;
- 振动开关:控制手机震动反馈是否启用;
- 色盲模式:开启后,游戏内不同颜色的单元格会显示对应纹理,降低单纯依赖颜色识别的问题;
- 坐标显示:开启后,棋盘单元格旁会显示数字坐标,方便玩家定位格子。
设置数据会保存到本地存储中,玩家下次打开游戏时可以恢复之前的设置状态。

四.新手教程流程搭建
新建了独立的新手教程场景,并为其编写独立逻辑,只保留教程所需的最小能力。当前流程中,如果本地没有教程完成记录,进入游戏时会优先加载新手教程场景,引导玩家完成基础操作。
引导系统结构
- NewbieGuideManager:负责引导步骤推进、启动和结束;
- GuideTargetRegistry:负责记录引导目标与具体节点之间的对应关系;
- NewbieGuideLayer:负责遮罩、高亮区域、手指动画和提示文本展示;
- GuideStorage:负责记录玩家是否已经完成新手教程;
- NewbieGuideConfig:负责配置每一步引导内容;
- TutorialBoard:负责教程棋盘的基础交互和目标注册;
- TutorialSceneCtrl:负责教程场景初始化、流程控制和结算衔接。 这种拆分方式可以避免把引导逻辑直接写死在某个 UI 节点或棋盘节点中。教程棋盘只负责提供可交互目标和响应玩家操作,引导管理器负责判断当前处于哪一步、应该高亮哪个目标、是否允许进入下一步。 目前新手教程已经完成基础流程接入,可以覆盖首次进入游戏时的基础操作说明。后续可以继续补充更细的步骤文案、动效表现,让教程体验更加顺畅。
教程流程
五.后续计划
- 完善色盲模式纹理资源,并配置到棋盘显示逻辑中;
- 生成缺失的交互音效,并配置进游戏中;
- 开始接入广告 SDK,优先打通看广告体力恢复、复活、多倍奖励等核心链路;
- 调研并尝试接入云服务,优先制作简单云存档逻辑,保障玩家账号数据和关卡进度。






