1,单元测试
模块类 | 输入 | 预期 | 实际 | 分析 |
collision | 点,线,园的坐标数据 | 能进行判断点是否在线上,圆内圆外,线是否与圆相交等 | 可实现预期功能 | 模块功能正常 |
math | 点坐标 | 能实现点坐标的基本处理如取对称点等 | 无异常 | 模块功能正常 |
util
| —— | 开始界面的功能选项 | 功能已实现但尚未使用 | 模块功能正常 |
2,模块功能测试
(1)beam
光束类子弹,拥有速度,硬度,以及伤害的属性,在此模块中碰撞检测正常,反弹与伤害检定功能在其他模块中实现。
(2)bullet
定义子弹类型,在其他模块中调用,可正常使用。
(3)craft
战舰种类,目前实现玩家战舰与普通敌机。
(4)dust
场景中浮动的尘埃,已实现,可正常使用。
(5)explosion
爆炸效果,2种,在实际测试中已实现。
(6)playership
基础功能受伤检定,爆炸检定已实现。
(7)shield
生成,反射子弹,消失,以及快速手势功能实现。
(8)weapon
设定中属于高级道具,目前实现的仅有基础自带的shield以及通过盾牌攒够能量后触发的vulcan
3,实际测试&用户体验(伪)
在基本模块功能能够实现的情况下着重进行便是此步骤。
体验感想:1,敌机生成的模块正常,但是开始阶段敌机出现频率较高,需要后期调整。
2,子弹飞行速度较快,大批量出现400速度的子弹时3块盾牌不能做到很好的防守(1是来不及,2是多方向受击,不能全部防守住),在将子弹速度削减至200,250,300,400,900,1500时面对普遍出现的飞机防守将变得容易许多。
3,计划中的排行榜以及成就系统需要提上日程。
4,将各子弹伤害调0后让飞机飞了好一会也没有出现问题,看来时间不会影响到游戏运行。
以及一些其他问题
| 问题描述 | 解决方案 |
1 | 画盾不准确 | 将盾中点设为旋转中心,但是画盾的起点是盾的端点 |
2 | 盾牌重叠情况(子弹在重叠的两块盾牌中来回弹射,消失,武器能量积攒过快) | 以子弹去检测和盾的碰撞,保证每帧只取最近盾进行反弹 |
3 | 多盾牌同时产生(android上崩溃,但ios上可支持) | 寻找平台触摸消息机制的区别加以解决 |
4 | vulcan使用时,盾牌效果不能保证 | vulcan改为自动向最近目标发射(持续若干时间或者发射若干数目) |
5 | 帧率不够的情况下子弹会穿过盾牌 | 改变子弹更新逻辑范围的算法 |
end