使用unity3d制作像素鸟游戏

个人博客文章链接:http://www.huqj.top/article?id=140

unity3d虽然是被设计用来制作3D游戏的,但是它提供了很多2D组件,所以也可以轻松的设计制作2D游戏,下面记录一下制作经典2D游戏flappy bird的过程。下面是最终效果:(github: https://github.com/Scottle-Hu/MyFLappyBird)

image.png

image.png

image.pngimage.png

一、设计

像素鸟的游戏规则非常简单,就是通过点击或者按键控制小鸟向上飞,场景会随机出现障碍物,碰到障碍物就算输。游戏流程一共需要三个场景:开始场景、游戏主场景、游戏结束场景

在开始场景选择开始游戏按钮加入到主场景开始游戏,主场景中失败后进入到结束场景选择继续或者退出。开始和结束场景都是比较简单的,只涉及一些场景跳转。主要的游戏逻辑在主场景中,涉及小鸟的前进和向上飞控制,以及障碍物的随机出现,另外场景是没有尽头的,也就是随着游戏的进行,背景会不断变长。

二、主场景

下面介绍主场景的搭建和脚本编写过程。

①场景搭建

游戏场景主要就是一个垂直的平面,使用unity自带的Quad组件即可,背景组件的属性如下图:

image.png

首先是该背景的位置和旋转度数,和主相机对应即可。为了给背景加上图片,需要使用一个材质球(这里就是图中的bg)

image.png

给材质球选择事先添加好的图片即可。除了背景之外,还需要一个天花板和地板,因为当小鸟撞到天花板或者地板的时候也会死,天花板和地板同样使用quad即可,只不过需要水平放置在背景图片的上下,3d透视图如下:

image.png

主相机和平行光照就不说了,需要注意的是,背景不能只有一个,需要有三个,其中一个是准备背景,即没有障碍物的背景,还需要两个有障碍物的背景,之所以要有两个,是因为为了实现无限背景,会在小鸟进入一个背景的时候在下下个背景的位置添加一个背景,而不能下个位置因为这样可能会导致刚进入背景的时候右边有空缺。背景上需要有标识过一个障碍物的方块和障碍物,都使用cube组件横截背景实现,并且需要将关卡标识设为透明,障碍物需要加一个材质球贴上图片。障碍物的透视图的属性分别如下:

image.png

image.png

背景的c#脚本如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

 

//地面背景的脚本

public class BackgroundScript : MonoBehaviour {

 

    //一个背景上有六个障碍物

    public GameObject barrier1;

    public GameObject barrier2;

    public GameObject barrier3;

    public GameObject barrier4;

    public GameObject barrier5;

    public GameObject barrier6;

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值