Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏

即使是如今,非常多初学游戏开发的同学。在谈到Unity的时候。依旧会觉得Unity仅仅能用于制作3D游戏的。

实际上。Unity在2013年公布4.3版本号的时候,就開始提供对制作2D游戏的支持了。比如。提供了一些专用于开发2D游戏的Unity工具。如今Unity已经公布了版本号4.5。对2D游戏的支持更是完好了不少。

为了说明Unity对2D游戏所提供的支持,本章会使用这些在Unity中原生的工具,开发一个简单的2D游戏。

本文选自《Unity 2D游戏开发高速入门》

1.1地面

普通情况下我们觉得“地面”是精灵的落脚点,没有这个“地面”精灵会发生坠落。因此本章创建一个2D游戏的第一步是,创建一个供游戏精灵落脚的“地面”。创建的详细的操作步骤是:本文选自《Unity 2D游戏开发高速入门》

(1)新建一个游戏项目、命名、并设置为2D项目,如图1-1所看到的。

从中能够看出本游戏项目名为world。

图1-1  新建游戏项目

(2)准备一个将用作2D游戏“地面”的图片,然后导入到新建游戏项目的Project视图里,如图1-2所看到的,本演示样例使用的“地面”图片,名为Platform。

提示1:导入资源到游戏项目的简单的方法是,直接拖动相应资源到Project视图下。此种方法能够一次拖入一个或者多个资源。

提示2:制作游戏的过程中,会不断的导入游戏所需的资源,假设不提前做出整理规划的话,导入的资源多了以后会十分的“乱”,不仅看起来不舒服,找起来也会十分的麻烦。因此,最好养成一个资源分类存放的好习惯。在本演示样例中,导入的“地面”图片,被放置在了Assets\Textures\Scenery目录里。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图1-2  Unity中,Project视图里,是导入的图片

(3)选中Project视图里的Platform,然后Inspector视图会显示这个图片的各项属性,以及此图片的预览视图。如图1-3所看到的。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图1-3  Inspector视图里显示了Platform的各项属性

对于此图片。有下面几个属性须要简单说明:

q   Texture Type:表示图片的类型,不同的类型在项目里的用途就不同。对于2D游戏项目。系统默认设置为Sprite(2D\uGUI);对于3D游戏项目。默认设置为Texture。

q   Filter Mode:此属性一共同拥有3个选项:Point、Bilinear和Trilinear。

设置了以后,图片用在游戏中时,质量或者说画面效果依次升高。

默认设置为Bilinear。

q   Max Size:表示图片的最大尺寸。游戏中,有时会以不同的尺寸使用图片。并进行对应的伸缩。本演示样例使用的图片Platform的实际尺寸是397×221。为了不影响图片的质量,要设置Max Size属性大于397,而属性中最接近397的是512。

q   Format:表示图片的格式。设置为16 bits,表示此图片不是压缩图片,并且能够表示数以“万亿”(216×216×216)计的颜色。本文选自《Unity 2D游戏开发高速入门》

(4)要在游戏中使用此图片的话,能够直接将此图片拖动到Scene或者Hierarchy视图里。

Unity就会在当前的游戏场景中加入这个图片对象,选中游戏场景里的此图片对象,然后在Inspector视图里设置它Transform组件下的各属性,如图1-4所看到的。

q   Position:(0,0,0)。

q   Rotation:(0,0,0);

q   Scale:(1,1,1);

图1-4  加入到游戏场景的图片对象,及其属性设置

(5)“地面”对象已经加入到了游戏的场景视图中。可是它的上面还不能“站立”不论什么精灵。也就是说它会如空气一般的存在。站立在其上面的不论什么精灵,都会如踩到了空气一样“下落”。

所以须要给“地面”对象加入Collider 2D组件。一共同拥有4类此种组件,如图1-5所看到的。

不同的类型适合于不同外形形状的对象,因为“地面”对象的外形是不规则的,因此本演示样例选择使用Polygon Collider 2D组件。本文选自《Unity 2D游戏开发高速入门》

为“地面”对象加入此组件的方法是,选中场景中的此对象。然后单击Component|Physics 2D|Polygon Collider 2D命令就可以。

加入了这个组件以后,在看场景中的“地面”对象,会发现它的表面“覆盖”了绿色的线,这个线包住了对象。如图1-6所看到的。本文选自《Unity 2D游戏开发高速入门》

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF4dWViYQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

图1-5  4类Collider 2D组件         图1-6  加入了Polygon Collider 2D组件的效果

Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏的更多相关文章

  1. 通过创建一个简单的骰子游戏来探究 Python

    在我的这系列的第一篇文章 中, 我已经讲解如何使用 Python 创建一个简单的.基于文本的骰子游戏.这次,我将展示如何使用 Python 模块 Pygame 来创建一个图形化游戏.它将需要几篇文章才 ...

  2. Unity3D 创建一个简单的2D游戏

    开始研究Unity3d 中的2D游戏. 首先创建出一个项目: 然后创建出一个场景: 然后添加一个背景: 然后创建一个主人公对象: 可以是自己做的素材,也可以是用unity裁剪的素材, 下面贴出裁剪素材 ...

  3. 从开发到部署,使用django创建一个简单可用的个人博客

    本文参考于: 简书-Django搭建简易博客教程:http://www.jianshu.com/p/d15188a74104 自强学堂-Django基础教程:http://www.ziqiangxue ...

  4. 【Unity Shaders】Reflecting Your World —— 在Unity3D中创建一个简单的动态Cubemap系统

    本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...

  5. IOS开发之小实例--使用UIImagePickerController创建一个简单的相机应用程序

    前言:本篇博文是本人阅读国外的IOS Programming Tutorial的一篇入门文章的学习过程总结,难度不大,因为是入门.主要是入门UIImagePickerController这个控制器,那 ...

  6. C#游戏开发高速新手教程Unity5.5教程

    C#游戏开发高速新手教程Unity5.5教程 试读文档下载地址:http://pan.baidu.com/s/1slwBHoD C#是微软公布的高级程序设计语言.这门语言和C语言一样,已经成为了大学计 ...

  7. C#游戏开发高速入门 2.1 构建游戏场景

    C#游戏开发高速入门 2.1  构建游戏场景 假设已经计划好了要编写什么样的游戏,在打开Unity以后.要做的第一件事情就是构建游戏场景(Scene).游戏场景就是玩家游戏时,在游戏视图中看到的一切. ...

  8. Android零基础入门第25节:最简单最常用的LinearLayout线性布局

    原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...

  9. Android零基础入门第45节:GridView简单使用

    原文:Android零基础入门第45节:GridView简单使用 前面一共用了8期来学习ListView列表的相关操作,其实学习的ListView的知识完全适用于AdapterView的其他子类,如G ...

随机推荐

  1. 【例题 7-9 UVA-1601】The Morning after Halloween

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 对于没有出现的,当成0节点就好. 所以总是认为有3个人需要走到各自的终点. 将平面图转成点边图.这样比较好枚举. (二维变成一维,模 ...

  2. Mycat 读写分离+分库分表

    上次进过GTID复制的学习记录,已经搭建好了主从复制的服务器,现在利用现有的主从复制环境,加上正在研究的Mycat,实现了主流分布式数据库的测试 Mycat就不用多介绍了,可以实现很多分布式数据库的功 ...

  3. Hadoop读书笔记(一)Hadoop介绍

    1.Hadoop是什么? 适合大数据的分布式与计算平台. HDFS:Hadoop Distributed File System 分布式文件系统  MapReduce:并行计算框架 2.HDFS的架构 ...

  4. IIS服务器设置http自动跳转https方法

    很多站长在部署SSL证书后,网站实现https加密访问,但考虑到用户习惯了http访问,很多外链也是http访问形式,所以需要在IIS服务器配置http自动跳转https,避免用户通过http访问不到 ...

  5. Machine-learning of Andrew Ng

    Machine-learning of Andrew Ng 1.基础概念 机器学习是一门研究在非特定编程条件下让计算机采取行动的学科.最近二十年,机器学习为我们带来了自动驾驶汽车.实用的语音识别.高效 ...

  6. pcb过孔盖油

    pcb的过孔应该盖油,,这样,两个距离比较紧的过孔就不会在焊接的时候短路了,尤其是手工焊接小件的时候.

  7. 每日技术总结:promise,express route,评分,local storage商品浏览历史,

    最近正在用Vue做一个电商项目.利用工作前后空隙时间. 1.promise的使用 点这里 如何在实际项目中使用Promise 2. Express Route 前后端传参的两种方法 (1)req.pa ...

  8. [Angular2 Animation] Basic animation

    @Component({ selector: 'app-courses', templateUrl: './courses.component.html', styleUrls: ['./course ...

  9. gdb查看线程堆栈信息

    查看堆栈:gdb -quiet -batch -ex='thread apply all bt' -p pid查看运行位置:gdb -quiet -batch -ex='thread apply al ...

  10. Android自定义组件系列【8】——遮罩文字动画

    遮罩文字的动画我们在Flash中非常常见,作为Android的应用开发者你是否也想将这种动画做到你的应用中去呢?这一篇文章我们来看看如何自定义一个ImageView来实现让一张文字图片实现文字的遮罩闪 ...