-
Unity层级浅谈
前言用于管理本知识集所有源代码的github库此前一直以分支的形式对应不同的知识点。现在开来这样做是有点麻烦的。各位拉取之后还得迁到对应分支。我现在改为全部在master下新建项目的形式,大家拉取之后打开对应的项目就行了。原本的master分支我已经迁出一个OldMaster保留下来。好了,言归正传,我们来谈谈今天的话题,Unity中的层级(layer).什么是Layer层级是Unity中场景物体的一种属性。摄像机可以指明渲染层级以渲染场景中的部分物体。灯光可以指明照射层级以照亮部分物体(...…
-
Unity开发中异步加载配置文件,像读取数据库一样读取配置信息
数据驱动数据驱动是软件设计与开发中不可忽视的内容,开发电子游戏更是如此。电子游戏世界是由逻辑与数据构建的。在开发过程中,我们基本上会将逻辑与数据分离开来。游戏开发完成后,逻辑部分相对改动较小,而数据的改动则相对频繁。我们可能需要不断修改来让游戏世界达到平衡。因此,在游戏开发按需加载配置是一项很重要的任务。CSV文件使用逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号)作为配置数据的手段是较为常见的。CSV读取方便又能使用Ex...…
-
Just for fun——Unity5制作贪吃蛇小游戏
前言说出来你可能不信。有一天晚上睡不着觉,就突然想到做游戏开发这么久,还没亲手实现过经典游戏贪吃蛇呢。然后就在床上想实现的方法,越想越手痒,要不是怕把枕边人吵醒,第二天又要上班,真要立刻爬起来把这小游戏实现了。于是想了一会儿,理清思路之后就逼自己入睡了。第二天下班之后,回到家就开始动手,已经搞定了。为了节约篇幅,本篇文章只简单说下思路。不想看我废话,需要直接参考代码的同学可以到我的Github。准备工作我使用了Unity自带的创建简单3D物体的功能来制作蛇头和蛇身的prefab。蛇身直接用...…
-
Unity5.x新的AssetBundle机制02——压缩
前言本节来讲讲Unity5新的AssetBundle机制中的压缩。你可以不对你的AssetBundles进行压缩,这样虽然文件很大,但是一旦下载好之后访问是最快的。通常都会进行压缩。并且Unity的AssetBundles支持LZMA和LZ4两种格式的压缩。LZMA(Ziv–Markov chain algorithm)格式。这是Unity打包成AssetBundle时的默认格式,会将序列化数据压缩成一个LZMA流,使用时需要整体解包。优点是打包后体积小,缺点是解包时间长导致加载时间长。L...…
-
Unity5.x新的AssetBundle机制03——下载与使用
前言本节我们来讲讲AssetBundle的下载与使用。在第一节Unity5.x新的AssetBundle机制01——构建中,我们已经准备好了需要的AssetBundles。本节我们就来使用这些保存好的资源。实践有两种方法可以下载AssetBundles:非缓存式。new一个WWW对象的方式,AssetBundles不会保留在本地设备的unity缓存文件夹中。我们使用这种方式来实践一下。打开第一节中已经准备好的工程。新建Scripts文件夹,并在其中新建脚本:NonCacheBundle.c...…
-
Unity5.x新的AssetBundle机制01——构建
1前言Unity在5.0中推出了新的AssetBundle管理机制,本文将对此进行介绍并完成简单实践。2什么是AssetBundles?AssetBundles是一堆从你的Unity项目中导出的文件,这些文件以特殊的格式组织,并能够在你的项目中按需加载。AssetBundles通过后缀名支持所有Unity支持的文件类型。如果你想包含一些自定义的二进制数据,可以将使用.bytes作为后缀。Unity在导入时将把此类文件当作一个TextAsset。3工作流3.1创建开发阶段,开发者将Asset...…
-
Unity3d开发中的特殊文件夹
AssetsAssets文件夹是unity项目中放置游戏资源的主文件夹。该文件夹中的内容将直接反应在编辑器的Project视口中。许多系统API基于该文件夹。与脚本编译顺序相关的文件夹在unity开发中,我们可以为自己的项目随意命名文件夹以管理游戏资源,包括代码资源。但unity保留了一些特殊文件夹用来做特殊用途,例如编译顺序。unity的脚本编译有4个阶段(phase),脚本处在哪个编译阶段取决于脚本所在的文件夹。如果你的一些脚本需要引用一些别的文件夹中定义的类,则需要关心他们的编译顺序...…
-
UGUI动态加载对话框
这是一篇关于使用Unity新的UI系统制作对话框并实现动态加载的教程。#1.准备工作##1.1新建一个Unity项目(Unity版本需要4.6以上),2D项目3D项目均可。##1.2如图设置Game窗口的Aspect为1920 x 1080##1.3将Scene窗口调整为2D查看模式。##1.4在Project窗口中新建Scenes,Scripts,Resources/Prefabs等文件夹,保存当前场景至Scenes文件夹。#2.编辑UI对象##2.1创建UIRoot如图使用菜单新建一个...…
-
游戏开发者之路
从事游戏开发近一年时间,学到很多,也知道还有很多要学。在这里做一点小小总结,一是规划自己以后的路,二是让那些想做游戏开发的后来者少走弯路。注:本文主要针对游戏程序部分,但不限于此。如果你是喜欢看书的类型,那么clayman长期维护的这篇文章可能比较适合你:游戏程序员养成计划。计算机基础计算机基础的知识在大学阶段基本能够完成。有遗漏的,可以参考网易云课堂的计算机专业课程。但是参加工作后可能没有那么多集中的时间可以再夯实基础,只能在工作之余尽量补上了。其中,计算机组成原理,操作系统,计算机系统...…
-
2016新的征程
前言早就想通过github开一个博客了,本站应运而生。回顾2015年,真的发生了很多事,有好有坏,喜忧参半。嗨,这就是生活吧。正文15年伊始,终于离开合肥来到上海投身游戏行业,圆了想做游戏的小梦想,算是一个进步。来沪不久后又认识了我可爱的女朋友(谁说程序员找不到女朋友的!),把我乐坏了。我们从相识相知相恋,每一刻都轻松自在,开心快乐。即便是吵架也乐在其中。至今也是陷于热恋,无法自拔。夏季与女友去了厦门旅行,期间赏心乐事历历在目,如在昨日。我一直向往大海,想不到我第一次看海就是与我心爱的人。...…