有联机排名和屏幕反馈功能的游戏弓

源代码git地址:

https://github.com/EverRaynor/m5stack_Motion-Sensing-Game_arrow

预期功能

  • 实时控制游戏,实现体感射击,镜头移动,移动控制等功能
  • 对游戏内部的击中时间进行相应,将击中数送回开发板
  • 多个设备之间可以进行联机,对击中数进行排名

实际完成情况

预期功能完全实现

实现方案

各功能模块实现思路

 

实物图片:

体感采集和通信

体感使用了陀螺仪模块。与电脑通信使用了蓝牙模块。设备之间联机使用了wifi模块

 

电脑游戏控制

自己用C#语言写了一个集成了串口收发,模拟电脑按键,修改剪贴板为一体的exe程序。将收发都调节为字符模式后,按打开串口按钮。即可按照开发板发过来的报文对游戏进行控制。报文格式为前三个字符控制鼠标横向移动,后三个字符控制鼠标纵向移动。中间两个字符控制射击等其他动作。

击中事件感知

原理为屏幕找色。由于自己用C#写的找色效率过低,会造成很大的延迟从而影响体验。我们使用了按键精灵软件的模糊找色功能。C#与按键精灵通过写入和读取粘贴板内容来进行交互。为了防止写入和读写冲突造成的闪退机制。我们加入了catch和try的机制。

联机排名

在收到了exe发来的找色检测信息之后,我们通过蓝牙发送给开发板。多个开发板通过wifi共享这些数据,来实现共享击中数据。从而实现排名功能。

屏幕显示示例:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值