使用Unity3D制作Flappy Bird

引言

相信大家一定有玩过一款曾经风靡一时的手游《Flappy Bird》,这款游戏以“手残克星”而著称,却又让人停不下来。

今天我将介绍如何使用Unity3D制作这款游戏

素材准备

首先我们需要准备游戏中需要使用到的素材,主要是图片和声音文件

图片素材

2.png

声音文件

在收集了基础素材之后,还需要将基础素材转换为Unity材质

3.png

Unity材质球

除了text之外,剩下的材质球需要设置模式为Unlit/Transparent

4.png

搭建基本场景

现在有了基本的素材,我们需要搭建一个基本的场景。

5.png

 

这里我创建了两个场景,分别是Android和PC。没错,Unity可以使用同一份代码生成多个端的发布版本。这里我们开发Android版本。

首先,我们需要准备几个基本的prefab, prefab就是Unity中的预制组件。我们使用prefab来简化工程模型。

建立Prefab-bg

6.png

这就是一个基本的bg单元,它由4根管道组成,每两根管道中间有一个Trigger(触发器),用来检测玩家通过障碍,以此来记录分数,触发渲染后面的管道,管道自身带有Collider(碰撞体),大小与模型一致。此外还有一个碰撞体与模型一致的地面。这些组件就构成了一个基本的bg元素。

bg元素在游戏中将被动态加载,只需要调整4根柱子的高度,就可以组合为连绵不绝的管道游戏地图。建立Prefab-bird

bird就是我们玩家操控的那个小鸟

7.png

小鸟的组成主要就是贴图,碰撞体,同时绑定了bird_a作为控制代码。

我们把bg和bird放到舞台上,添加一个正交视角的摄像机作为游戏的主视角,再添加一个主光源。游戏的基本框架就搭好了。

8.png

 

9.png

编写游戏的控制代码

10.png

bird_a读取按键或者键盘事件,控制小鸟跳跃

FollowBird 这个是主摄像机的绑定事件,控制摄像机跟着小鸟一起移动

GameManager 这个是Unity保留文件,必须要有的一个文件,负责整个游戏的主循环控制

gamemenu 负责控制失败后继续的菜单界面

GroundCollision 负责控制地面的撞击事件

ImmediatelyScore 负责实时更新当前分数

MenuAnimation 负责菜单展示时的动画

MoveTriger 负责处理管道间的触发器

pipe 负责在bg生成时随机微调管道的高度

pipeUpOrDown 小工具 判断管道是上管道还是下管道

TryAgain 失败后再来一局

写完代码程序,我们的游戏就完成了。

游戏视频详见如下链接:

链接:https://pan.baidu.com/s/1qvdYaMT-ggbMizFG4UHx9A 

提取码:agia 

如果您有仿真或编程方面的需求,可以通过微信公众号找到我们呦~

微信公众号:320科技工作室

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CAE320

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值