设为首页收藏labplus社区产品资料库
151
积分值+2
64
掌控币+1
0  关注
79  粉丝
54  帖子
luyi
2020年03月21日

#分享#掌控游戏系列之体感潜艇游戏

       近期抖音游戏玩出“新高度”。抖音推出了一个特效,是游戏特效,叫潜水艇挑战,很多抖音玩家都在玩,据说,和之前的FlappyBird一样,时间越久潜水艇不坠毁就算获胜。今天我们使用mind+和掌控板,一起来玩这个游戏。



      重要知识点概括:

     (1)mind+外部素材的导入

     (2)使用mind+造型功能绘制素材

     (3)游戏角色的碰撞检测

     (4)在mind+中使用掌控板

    (5)数据的映射

   【演示视频】


1. 舞台布局

   1.1 游戏主舞台。选择舞台背景,在mind+背景库中找到“水下”分类中选择“海底世界1”

  


  1.2 游戏胜利舞台导入。

   在舞台背景处,选择“上传”即可



   1.3 游戏失败舞台导入。


2. 上传潜艇素材“qianshuiting.png”,并调整至合适大小

  



     注意:上传游戏角色潜艇图片时,应采用PNG格式,背景透明

3. 绘制障碍物

3.1 障碍物效果


3.2 绘制矩形,设置好填充颜色和边框颜色、大小


3.3 绘制并组合线段


  3.4 组合上面两大部分素材,并使用橡皮擦去除矩形多余部分


  另,复制一份障碍物,并旋转270度,使得障碍物在舞台一上一下分布

4. 移动潜水艇和障碍物的位置,大致布局舞台


5. 游戏音乐导入

   使用mind+的声音功能,直接选择“上传”即可


潜艇游戏中使用到三种音乐:

(1)游戏进行时的背景音乐“轻快活力.mp3”

(2)游戏胜利背景音乐“成功”

(3)游戏失败背景音乐“滴落声”

至此,所有的游戏资源已经加载进来了

6. 游戏程序编写

  6.1 点击绿旗游戏开始

(1)显示舞台背景“海底世界1”

(2)广播消息“开始游戏”

(3)潜艇出现在舞台左边,x坐标固定-195,y坐标是-135~135之间的随机数,也就是说潜艇的位置可上可下,随机的。


  6.2 游戏主循环

(1)每隔0.02秒将X的坐标增加1,使潜艇自左向右移动。

注意:x数值小,等待时间短,可以使潜艇看起来流畅,不卡顿,也不跳跃。

(2)判断如果潜艇x坐标大于190,也就是舞台最右侧,即游戏成功。切换到游戏胜利界面“win.jpg”,并停止游戏主声音,播放游戏胜利声音“成功”。

(3)判断如果潜艇碰到障碍物,即游戏失败。切换到游戏失败界面“fail.jpg”,并停止游戏主声音,播放游戏失败声音“滴落声”。

小技巧:特别加深了游戏角色“潜艇”和“障碍物”的边缘颜色,纯颜色,并且两者颜色区分度要大。


6.3 点击绿旗,循环映射掌控板x轴加速度值。

(1)本游戏使用了两个“当绿旗被点击”,相当于多线程,都可以正常运行。

(2)当掌控板屏幕正对自己,垂直于桌面时,x轴加速度值为1000;当掌控板屏幕背对自己,垂直于桌面时,x轴加速度值为-1000;当掌控板平放在桌面上时,x轴加速度值为0。

而潜艇在舞台最上方时,y轴坐标为140;潜艇在舞台最下方时,y轴坐标为-140。

因此,需要将掌控板加速度和潜艇的y轴坐标映射起来。


6.4 游戏障碍物部分编程。

(1)障碍物收到“游戏开始”消息时,播放游戏背景音乐“轻快活力.mp3”。

(2)初始化第一个障碍物x为180,y坐标实在-180和-77之间的随机数,也就是说,障碍物出现的位置可高可低,不固定。

(3)显示障碍物

(4)将障碍物的坐标循环减小,障碍物由右往左移动,当x轴坐标等于-40时,克隆自己,生出新的障碍物。

(5)当障碍物,到达舞台左侧时,隐藏该障碍物。


(6)克隆体代码,和自身基本代码一样。


结语

     这次的游戏使用的是掌控板板载三轴加速器来控制潜艇的上下移动,而抖音中可以调用手机摄像头,使用人脸、鼻子等进行识别控制潜艇上下移动。那么我们使用mind+能否实现人脸控制呢?


附件:素材及代码


6

点赞

1470 次阅读7 条评论1 条回复6 人赞2 人订阅
7条评论