CG游麟网官方站
查看: 4091|回复: 11

Unity3D研究:2D游戏开发制作原理

[复制链接]

9

主题

9

帖子

47

积分

初入江湖

Rank: 1

麒麟币
38
任务币
0
威望
0
贡献
0
主题
9
在线时间
3 小时
发表于 2015-9-11 17:42:10 | 显示全部楼层 |阅读模式

本篇文章我们将探讨一下Unity3D中如何来制作2D游戏。目前市面上已经有非常成熟的2D游戏引擎,比如 cocos2d 或cocos2d-x等,并且都是免费的开发者可以直接用来制作2D游戏。然而使用3D引擎来制作2D游戏会让游戏画面更加附有立体感,因为2D游戏中Z 轴永远是0,而3D游戏中Z轴是可变化的。
接着说说在Unity3D中制作2D游戏的原理。在Unity3D中绘制贴图的方式大致可分为两种,第一种是在GUI中绘制贴图,第二种是在网格面上绘制贴图。先说说第一种,GUI主要用来制作简单的游戏2D界面,比如游戏主界面中绘制的“游戏名称”、“开始游戏”、“保存游戏”、“退出游戏”一些按钮或界面中一切其它的高级控件,文本框,输入框等等、GUI只能制作简单的图形化界面,因为它的渲染效率非常低,它与3D世界中网格模型的渲染机制完全不一样。第二种的属于将图片绘制在3D中网格平面中,它的渲染效率远远高于GUI中,在制作2D游戏时都是将所有贴图绘制在平面模型对象之上,最后用摄像机以 90度垂直的角度照射这这些平面。
下面我们开始学习在Unity3D中制作2D游戏的原理。2D游戏又可以分为两种,区别是物体碰撞时带物理引擎或不带物理引擎。带物理引擎就好比《奋斗的小鸟》一样,大家应该都玩过,小鸟发射后下落击落其它物体将发生物理的碰撞,不带物理引擎的就好比《捕鱼达人》这种游戏,游戏中碰撞都是由代码自己来完成的,经典的2D碰撞监测包括:矩形与矩形的碰撞、点与矩形的碰撞、圆与圆的碰撞等。
今天这篇文章我们主要讨论第二种不带物理引擎的2D游戏。
如下图所示,我们盘点一下2D游戏中必备的几个个体。
摄像机:无论是3D游戏还是2D游戏摄像机都是非常重要的属性,移动摄像机即可更改屏幕中显示的内容,游戏地图的坐标永远都不会发生改变。
地图:2D游戏中的地图一般是由tile拼接而成,它可由地图编辑器生成然后将每一块tile绘制在整个贴图中,最后将贴图贴在平面网格面之上即可。还有一种作法是将两个或两个以上屏幕大小平面以队列的形式排在屏幕后面,当摄像机移动超出第一块面显示范围时,将它的坐标移动在第二块面后面,此时地图就形成了一个排序的队列。为了让地图的效果更加完美,一般地图可以由好几层来组成,比如背景层、与主角的遮挡曾、物理层等等。
地图拼接:地图的排序队列中两张图应当是可以无缝拼接,这个应当是由美术来提供资源,这里我就不那么细致了将远离说明白即可。
主角:它的范围就比较广的,敌人、物品等等出现在地图之上的都可以使用它。如果控制主角移动,摄像机移动的同时主角也当跟随移动,并且保持屏幕中的移动比例,除非摄像机无法移动,这时将直接移动主角在屏幕中的坐标。 说的有点绕了呵呵,大家仔细想想哈哈。。
然而上面的一切面是由Plane面来完成。
0.jpg 再Unity层次视图中选择摄像机对象,右侧监测面板视图中我们看看摄像机组件的一些属性,如下图所示。需要注意的就是Projection 投影类型。
1.jpg 首先我们应当修改摄像机的属性,默认摄像机投影的类型是Perspective,它保持摄像机以扩散的的形式照射着不利于2D平面的展示。这里我们应当选择Orthographic,这样摄像机将直直的照射在显示的区域。

回复

使用道具 举报

3

主题

1212

帖子

1万

积分

无人不晓

Rank: 12Rank: 12Rank: 12

麒麟币
13777
任务币
200
威望
0
贡献
0
主题
3
在线时间
371 小时

最佳新人忠实会员

发表于 2015-9-12 09:01:27 | 显示全部楼层
真棒  谢谢分享
回复 支持 反对

使用道具 举报

0

主题

4493

帖子

4934

积分

誉满一方

Rank: 8Rank: 8

麒麟币
388
任务币
170
威望
0
贡献
0
主题
0
在线时间
876 小时
发表于 2015-9-12 09:02:56 | 显示全部楼层
我一直默默的支持楼主
回复 支持 反对

使用道具 举报

17

主题

717

帖子

2469

积分

名动江湖

Rank: 6Rank: 6

麒麟币
1734
任务币
50
威望
0
贡献
0
主题
17
在线时间
66 小时

最佳新人忠实会员

发表于 2015-9-12 09:54:42 | 显示全部楼层
真的非常棒!
回复 支持 反对

使用道具 举报

5

主题

495

帖子

1329

积分

名动江湖

Rank: 6Rank: 6

麒麟币
815
任务币
50
威望
0
贡献
0
主题
5
在线时间
89 小时
发表于 2015-9-12 12:06:16 | 显示全部楼层

真的非常棒!
回复 支持 反对

使用道具 举报

0

主题

27

帖子

72

积分

锋芒初露

Rank: 2

麒麟币
45
任务币
0
威望
0
贡献
0
主题
0
在线时间
3 小时
发表于 2015-9-12 19:27:56 | 显示全部楼层
还是支持一下
回复 支持 反对

使用道具 举报

0

主题

1万

帖子

3万

积分

垂名青史

Rank: 16Rank: 16Rank: 16Rank: 16

麒麟币
21764
任务币
359
威望
2
贡献
131
主题
0
在线时间
754 小时

忠实会员

发表于 2015-9-12 20:52:14 | 显示全部楼层
感謝分享這麼好的遊戲製作知識!
回复 支持 反对

使用道具 举报

5

主题

3586

帖子

5844

积分

誉满一方

Rank: 8Rank: 8

麒麟币
2258
任务币
50
威望
0
贡献
2
主题
5
在线时间
353 小时

最佳新人

发表于 2015-9-13 12:26:01 | 显示全部楼层
我一直默默支持楼主
回复 支持 反对

使用道具 举报

17

主题

2841

帖子

1万

积分

无人不晓

Rank: 12Rank: 12Rank: 12

麒麟币
11918
任务币
300
威望
0
贡献
0
主题
17
在线时间
336 小时

最佳新人忠实会员

发表于 2015-9-15 12:22:56 | 显示全部楼层
感谢楼主分享!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
客服QQ:
47413829
新QQ群:
418757022
在线时间:周一至周五
9:00-22:00 Email:
47413829@qq.com
举报:网盘资源失效
在线客服
快速回复 返回顶部 返回列表