观书散遗帙,探古穷至妙。这篇文章主要讲述鸿蒙分布式小车游戏Demo相关的知识,希望能为你提供帮助。
一、描述Demo详情
此应用是一个软硬结合的控制小车的小游戏应用,手机端app用于控制,鸿蒙小车端被控制。使用了两部P40手机,两辆HI3861鸿蒙小车,可以单独使用一部手机控制任何一辆鸿蒙小车,称为单人模式,也可以两部手机各控制一辆小车进行比赛,对战模式。
二、app使用详情
首先是启动小车,按下user键,小车会将小车自己做为一个wifi热点,给手机链接,并把热点名字显示在OLED屏幕上:
文章图片
然后打开手机app,手机app使用纯鸿蒙api开发,打开应用后有背景音效:
文章图片
在单人模式下,手机可以控制任何小车,进入app首页选择“单人”,会进入到选择小车的页面,通过左右滑动选择对应的编号的小车:
文章图片
选定后,可以给选择小车配置第三方wifi热点,输入wifi名和密码,小车会根据输入的wifi名和密码链接上对应的wifi,同时停止掉小车本身的wifi热点,手机会回退到原本链接的wifi(就是刚刚给小车配置的wifi),这样多部手机和多个小车都连上指定的热点,多设备间就可以利用鸿蒙分布式特性进行交互数据了:
文章图片
完成配网后,小车会将自己的ip地址显示到OLED屏幕上,给手机下步操作:
文章图片
有了小车的ip地址,输入这个ip地址,接下来就可以用手机控制小车运动了:
文章图片
文章图片
左下角绿色按钮,模拟油门,按下它小车开始前跑,上面的红色按钮为停止,右方的上下左右,上为加速,下为后退,左右分别是左转和右转,右方的按钮必须同时按下油门,并且都不抬起才能生效,是多点触摸做的。
对战模式,手机使用了鸿蒙特有的分布式数据库进行不同手机间的数据实时共享,利用分布是数据库,在对战模式下,比如:A手机选择了编号28882号小车,B手机能马上得到弹框通知,避免选冲突,在下次进入后,由于分布式数据库已经记住了对战模式下各自的选择,页面将屏蔽掉对手已经选择的小车。比赛结果同样使用的是分布式数据库保存,并且对分布式数据库实时监控,对战模式下,参赛小车中任何一辆率先到达终点,小车下的传感器将感应到终点线,继而像手机app发送自己的小车编号,手机收到编号立即判断那个小车获取胜利,并且在所有参赛手机上弹出信息,通报胜利者,并且停止所有参赛小车的行进。
文章图片
手机端设计思路:
文章图片
小车端设计思路:
文章图片
文章相关附件可以点击下面的原文链接前往下载
原文链接:https://harmonyos.51cto.com/posts/4735#bkwz
想了解更多关于鸿蒙的内容,请访问:
51CTO和华为官方战略合作共建的鸿蒙技术社区
https://harmonyos.51cto.com/#bkwz
【鸿蒙分布式小车游戏Demo】
推荐阅读
- C语言 创建一个数组实现函数initemptyreverse
- C语言三子棋小游戏开发详细解析
- 鸿蒙轻内核 M 核源码分析(数据结构之任务排序链表)
- C语言进阶—— 字符操作函数+内存操作函数详解(吐血爆肝 !!!)
- 能否与安卓iOS抗衡(鸿蒙OS+华为P40第一时间上手体验)
- 中断 Hwi(提高鸿蒙轻内核系统实时性及执行效率的秘密武器)
- 基于鸿蒙OS的按键驱动
- 鸿蒙开源第三方组件——自定义图片缩放组件PinchImageView-ohos
- 鸿蒙第三方组件——SwipeCaptcha滑动拼图验证组件