Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏
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游戏的更多相关文章
- 通过创建一个简单的骰子游戏来探究 Python
在我的这系列的第一篇文章 中, 我已经讲解如何使用 Python 创建一个简单的.基于文本的骰子游戏.这次,我将展示如何使用 Python 模块 Pygame 来创建一个图形化游戏.它将需要几篇文章才 ...
- Unity3D 创建一个简单的2D游戏
开始研究Unity3d 中的2D游戏. 首先创建出一个项目: 然后创建出一个场景: 然后添加一个背景: 然后创建一个主人公对象: 可以是自己做的素材,也可以是用unity裁剪的素材, 下面贴出裁剪素材 ...
- 从开发到部署,使用django创建一个简单可用的个人博客
本文参考于: 简书-Django搭建简易博客教程:http://www.jianshu.com/p/d15188a74104 自强学堂-Django基础教程:http://www.ziqiangxue ...
- 【Unity Shaders】Reflecting Your World —— 在Unity3D中创建一个简单的动态Cubemap系统
本系列主要参考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同时会加上一点个人理解或拓展. 这里是本书所有的插图.这里是本书所需的代码和资源 ...
- IOS开发之小实例--使用UIImagePickerController创建一个简单的相机应用程序
前言:本篇博文是本人阅读国外的IOS Programming Tutorial的一篇入门文章的学习过程总结,难度不大,因为是入门.主要是入门UIImagePickerController这个控制器,那 ...
- C#游戏开发高速新手教程Unity5.5教程
C#游戏开发高速新手教程Unity5.5教程 试读文档下载地址:http://pan.baidu.com/s/1slwBHoD C#是微软公布的高级程序设计语言.这门语言和C语言一样,已经成为了大学计 ...
- C#游戏开发高速入门 2.1 构建游戏场景
C#游戏开发高速入门 2.1 构建游戏场景 假设已经计划好了要编写什么样的游戏,在打开Unity以后.要做的第一件事情就是构建游戏场景(Scene).游戏场景就是玩家游戏时,在游戏视图中看到的一切. ...
- Android零基础入门第25节:最简单最常用的LinearLayout线性布局
原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...
- Android零基础入门第45节:GridView简单使用
原文:Android零基础入门第45节:GridView简单使用 前面一共用了8期来学习ListView列表的相关操作,其实学习的ListView的知识完全适用于AdapterView的其他子类,如G ...
随机推荐
- 学习笔记(四):jQuery之动画效果
1.show()显示效果 语法:show(speed,callback) Number/String,Function speend为动画执行时间,单位为毫秒.也可以为slow"," ...
- 前端面试题(VUE)
(前端面试题大全,持续更新) vue:v-model 双向绑定的原理 依赖收集 虚拟DOM的作用 vue@3.0中的preset配置? 父组件A和其子组件B/子组件C,B/C进行通信的方式(怎么通信) ...
- 洛谷 P2755 洗牌问题
P2755 洗牌问题 题目描述 给你2N张牌,编号为1,2,3..n,n+1,..2n.这也是最初的牌的顺序. 一次洗牌是把序列变为n+1,1,n+2,2,n+3,3,n+4,4..2n,n.可以证 ...
- GridView与ArrayAdapter的结合
activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android ...
- FZU 2020 组合
组合数求模要用逆元,用到了扩展的欧几里得算法. #include<cstdio> int mod; typedef long long LL; void gcd(LL a,LL b,LL ...
- windows ffmpeg 的安装
本文我们要安装的是 windows 下的 ffmpeg 命令行工具,安装的步骤十分简单,分为:下载.解压.配置环境变量. 下载,进入 http://ffmpeg.org/download.html#b ...
- 【BZOJ 1597】 [Usaco2008 Mar]土地购买
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 把这n个土地按照x为第一关键字.y为第二关键字.都升序排. 然后考虑一个土地xi,yi 若有一个土地的x<=xi且y<= ...
- UVALive - 4960 Sensor network(生成树+LCA)
题目大意:给出N个点.M条边.问这N个点形成的生成树的最大权值边-最小权值边的最小值 解题思路:先排序,然后按生成树的kruscal算法进行加边,再维护一个最小权值边 加边的时候要考虑一下加下去的边是 ...
- gdb查看线程堆栈信息
查看堆栈:gdb -quiet -batch -ex='thread apply all bt' -p pid查看运行位置:gdb -quiet -batch -ex='thread apply al ...
- PatentTips - 在物联网中进行数据过滤的方法和装置
背景技术 [0001] 本发明涉及物联网,特别涉及在物联网进行数据过滤的方法和装置. [0002] 物联网是新一代信息技术的重要组成部分,特指物物相连的网络.具体地,物联网是指通过各种信息传感设备,如 ...