前言
由于项目比较繁杂,因此根据基本模块会分为数篇博客,记录了主要流程和某些具体的技术难点,以此作一个技术总结
效果预览图 GamePlay
1、记忆部分。播放音乐,在某一时间滑块从轨道滑下,**经过一段时间后(SlideTime)**滑到判定区,此时对应鼓面播放动画以提示玩家正确的音乐节奏
2、操作部分。此时回放上一部分的音乐片段,玩家根据记忆和听觉反馈(音乐节奏鼓点)在正确的时间内做出击打看不见的滑块
模块划分 其他功能 难度控制
有三种难度(简单、中等、困难),难度越高,音乐播放越快,滑块移速变快(SlideTime也越短);可以在任意时候改变难度
UI显示
项目的大部分工作量都体现在UI部分上,特别是鼓盘敲击动画——游戏中大部分反馈的来源,还有其他杂七杂八的游戏信息显示(难度条、分数、进度条等)
技术难点
串口编程(与硬件沟通)
这一部分倒是比想象中简单很多,因为负责硬件那边的人做了大部分工作,只需写脚本调用接口就行
随音乐节奏生成滑块(并控制滑块移速) 要保证改变滑块移速时滑块和音乐的对应关系不变 实现回放功能
一般的音游节奏明显,不需要记忆部分;但该项目中某些原因添加了第一部分,对同一段音乐需要播放两次,这就给生成滑块和播放音乐带来巨大挑战(实际上也导致了难度成倍上升…)
鼓盘敲击动画
鼓盘有两套动画(正确敲击和错误敲击),且允许玩家在短时间内快速敲击,因此需要正确设置判断条件及一系列和中断有关的参数
因篇幅问题不能全部显示,请点此查看更多更全内容