【实战】Unity3d官方案例之Flappy Bird(上篇)

本文是Unity3d官方案例教程,详细介绍了Flappy Bird游戏的制作过程,包括游戏界面布置、小鸟动画和逻辑实现。首先,介绍了资源导入、Sprite Editor的使用来分离小鸟的动画,接着设置了Bird、Ground和Background的Sorting Layer,以实现正确的层级显示。然后,通过添加Collider 2D和Rigidbody 2D组件实现了物理模拟和碰撞检测。最后,通过Unity的Animation创建了Idle、Flappy和Die三个动画状态,并配置了Animator状态机,实现了点击屏幕小鸟飞翔的初步动画效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

案例来源:Unity3d - Flappy Bird
资源:Flappy Bird Asset

Unity3d官方案例之Flappy Bird(上篇)

本案例来自Unity3d官方案例教程,一切资源均为官方视频内提供。
游戏介绍:
 本案例是实现之前很火的一款游戏《flappy bird》。
 《flappy bird》是一款由来自越南的独立游戏开发者Dong Nguyen所开发的作品。(信息来源:百度)

 这款游戏我们可以通过点击屏幕,实现类似“跳跃”的飞翔,通过一个又一个的关卡。
 这里写图片描述
 实现这个游戏我们需要完成以下功能:
 · 游戏界面的布置(背景、地板、小鸟等);
 · 小鸟动画和逻辑实现(Animation Clip的设置、Animation Controller的设置等);
 · 游戏UI 制作
 · “无限”滚动背景的实现;
 · “无限“生成障碍;
 · 额外功能…
 话不多说我们开始吧~

一、游戏界面的布置

1、新建Project,重命名为Flappy Bird,选择2D,将下载后解压完成的资源包拖进Assets中。(选中对应文件夹直接拖拽即可)
这里写图片描述
2、目录如下所示:
这里写图片描述
 其中,
 ① LuckiestGuy, 项目中用到的字体。
 ② BirdHero,小鸟的三种形态(飞行、展翅、坠机),因为都在同一张贴图里,因此待会儿需要将它分开。
 ③ ColumnSprite,障碍物贴图,也就是水管。
 ④ GrassThinSprite,草地贴图。
 ⑤ SkyTileSprite,天空贴图,天空背景。
3、我们选中BirdHero Sprite,在Inspector中,
· 将Texture Type设置成(Sprite 2D and UI),
· 将Sprite Mode设置成Multiple。
这样我们就能将小鸟的三种形态分离开来。
· 点击Sprite Editor,在弹出的窗口中选择Apply
这里写图片描述
· 在打开的面板中选择Slice,Type为Automatic,然后点击Slice,最后点击右上方的Apply。
(Sprtie Editor的好处在于美工可以将一堆的UI制作在一个贴图内,然后我们只需要在Sprite Editor中根据需求选择不同的Type方式去对贴图进行分割,这样我们就能统一管理一堆的贴图了。)
这里写图片描述
· 这时点击三个小鸟的位置,都会有一个个框框,这表示该贴图已经被分成3个贴图了,在右下方的Sprite小窗口中我们可以观察到相关的参数,具体的作用有兴趣的可以自己捣鼓一下,这里就不赘述了。

XMLCDATA(字符数据)是一种特殊的语法结构,用于在XML文档中包含一些可能被XML解析器误解的文本数据。CDATA通常用于包含特殊字符(如小于号和大于号)、标记和其他保留字符等的文本。 在XML中,正常情况下,文本数据将被XML解析器解析并按照其规则进行处理。但是,如果我们希望将文本数据视为纯文本而不进行解析,就可以使用CDATACDATA会告诉XML解析器将其包含的文本数据视为纯字符数据,而不是XML标记。这样可以确保文本数据被正确显示而不引起解析错误。 CDATA以以下方式定义在XML文档中: <![CDATA[文本数据]]> 在CDATA内部,我们可以包含任何文本数据,包括特殊字符和XML标记。解析器会忽略CDATA标记内的任何XML标记,并将所有内容视为普通文本。这对于包含HTML代码或其他需要保留原始格式的内容非常有用。 例如,假设我们需要在XML文档中包含一段HTML代码: <description><![CDATA[<strong>Hello, World!</strong>]]></description> 如果我们不使用CDATA将HTML代码包装起来,XML解析器将尝试解析HTML标签,并将其视为XML标记,而不是纯粹的文本。但是使用CDATAXML解析器将始终将其视为文本,并正确显示HTML代码。 总之,CDATA是一种特殊的语法结构,用于在XML文档中包含可能被解析器误解的文本数据。它确保文本数据被正确显示而不引起解析错误,并且可以包含特殊字符、XML标记和其他保留字符。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值