Unity3D----FlappyBird剖析-附源码

本文详细介绍了使用Unity3D开发FlappyBird游戏的过程,包括准备资源、设置场景、创建移动的道路和障碍物、实现小鸟的动画效果、添加欢迎和结算页面,以及整合音效。附带完整源码下载链接。
摘要由CSDN通过智能技术生成

FlappyBird不用多说了,一款极其简单,但是又很火的游戏。我在得知这款疯狂的游戏后,就有一种把它重现的冲动,然后花了我4个多小时,产生出了一个可以玩的版本,分享给大家(文末尾付下载链接)。

下面简单介绍游戏的开发过程(本文的例子需要使用unity4.3.0以上的版本打开)。

目录介绍

 运行图:

项目的目录结构如下图,anims中存放动画资源,prefab中存放预置对象,scprits存放脚本,sprites用来存放贴图。

准备资源

获取FlappyBird的贴图资源和音效资源。把资源导入到sprites文件夹下,选中atlas,在Inspector中进行编辑,如下图:

设置为sprite,模式为Multiple,点击按钮Sprite Editor进行相应的图片分隔。在弹出的对话框中,可以使用自动切图方式,如下图:

接下来就可以进行编码了

设置场景

为了区分场景的层次(主要是用来决定图层的顺序,sorting Layer的功能)以及编码的需求,建立一些tag sorting Layer和Layer。先点击Unity编辑器右上方的Layers下拉菜单并选择"Edit Layers...",如下图:
并填写如下信息:

移动的道路和障碍

一格道路有两个障碍(如下图),场景中用两格道路来反复循环(当一格道路移出屏幕后就重新调整位置,等待下一次出现在屏幕上),达到不断移动的效果。

下面是道路移动的部分代码road.cs
  1. public class road : MonoBehaviour {   
  2.     ....  
  3.     // Update is called once per frame   
  4.     void Update () {  
  5.         Vector3 pos = trans.position;  
  6.         pos.x -= speed * Time.deltaTime;  
  7.         trans.position = pos;  
  8.         if(pos.x <= -1.6f - 3.35f*idx) {   //当道路移出屏幕后,从小调整其位置   
  9.             Vector3 pp = roads[idx%2].transform.position;  
  10.             pp.x += 3.35f;  
  11.             idx++;  
  12.             roads[idx%2].transform.position = pp;  
  13.             if(isBegin){  
  14.                 roads[idx%2].GetComponent<roadGen>().gen();  
  15.             }  
  16.         }  
  17.     }  
public class road : MonoBehaviour {	
	....
	// Update is called once per frame
	void Update () {
	 	Vector3 pos &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值