至此,飞行射击游戏已经基本实现该有的功能,已经比较接近早期的商业游戏了。
如果采用脚本,可以完成关卡游戏,如果不用,也可以做成无限挑战游戏。
我们汇总一下制作的过程:
1、建模UML
2、主循环处理过程
//清屏
ws2812_pixel_all(0, 0, 0);
//背景行动
backGroundStar.tick(t);
//玩家1行动
player1->tick(t, b1);
//玩家2行动
player2->tick(t, b2);
//子弹行动
bulletManager.tick(t);
//敌人行动
enemyManager.tick(t);
//掉落物行动
propManager.tick(t);
// 检查玩家1道具使用特效的碰撞
checkEffectCollision(t, player1);
// 检查玩家2道具使用特效的碰撞
checkEffectCollision(t, player2);
// 检查敌机的碰撞
checkEnemyCollision();
// 检查玩家的碰撞
checkPlayerCollision();
// 检查掉落物的碰撞,捡拾道具
checkPropCollision();
// 绘制背景到缓冲区
backGroundStar.show();
// 绘制敌机到缓冲区
enemyManager.show();
// 绘制玩家1到缓冲区
player1->show();
// 绘制玩家2到缓冲区
player2->show();
// 绘制掉落物到缓冲区
propManager.show();
// 绘制子弹到缓冲区
bulletManager.show();
// 绘制缓冲区到屏幕
ws2812_show();
3、游戏制作部分文档:
STM32学习笔记二十一:WS2812制作像素游戏屏-飞行射击游戏(11)探索游戏脚本
STM32学习笔记二十:WS2812制作像素游戏屏-飞行射击游戏(10)探索游戏平衡
STM32学习笔记十九:WS2812制作像素游戏屏-飞行射击游戏(9)探索道具系统
STM32学习笔记十八:WS2812制作像素游戏屏-飞行射击游戏(8)探索游戏多样性,范围伤害模式
STM32学习笔记十七:WS2812制作像素游戏屏-飞行射击游戏(7)探索动画之故事板,复杂动画
STM32学习笔记十六:WS2812制作像素游戏屏-飞行射击游戏(6)探索动画之插值动画
STM32学习笔记十五:WS2812制作像素游戏屏-飞行射击游戏(5)探索动画之帧动画
STM32学习笔记十四:WS2812制作像素游戏屏-飞行射击游戏(4)探索碰撞检测
STM32学习笔记十三:WS2812制作像素游戏屏-飞行射击游戏(3)探索数据管理,比例分布随机数算法
STM32学习笔记十二:WS2812制作像素游戏屏-飞行射击游戏(2)探索时间间隔同步,双向链表
STM32学习笔记十一:WS2812制作像素游戏屏-飞行射击游戏(1)探索空间同步
4、PCB 板制造文件,可提交PCB打样:
STM32学习笔记十:WS2812制作像素游戏屏(贪吃蛇大作战) PBC制版文件,可以提交打板服务
5、所有代码打包下载:
↑ 置顶 ↑
6、像素屏制作部分:
STM32学习笔记三:WS2812制作像素游戏屏(制作)
最终效果:
【vvind2008】新作上线,快来看看!
功能上,还缺少 音乐音效 / 进度保存读取 。早期单机版游戏基本就这样了。
这些东西我们将在未来的改进中实现。如有兴趣,敬请期待。