粒子系统是极好的系统,适应于各种各样的特效在游戏中,包括火焰,爆炸,烟雾,水,灯光,行星模拟,还有很多, unity 伴随着一个建立在粒子系统上的 library 可以用来实施这些特效在你的 或者 3d 游戏上,而且在 unity 上实施这个粒子系统有着额外的灵活性和允许你创造更神奇的特效,有时候你有些情况需要要求一些专用化,这些是不可以被建立的。 此外,最近我尝试实现实现一个粒子效果让粒子分散开来像爆炸一样,然后停留在一个地方,最后缓慢的淡出不断循环。当粒子不断发散随着它们的生命周期可以熟练的用过 build-in editor ,等待它们的是终止。 这里可以看到一个粒子系统是我创建的,它使用 build-in particle editor 在 unity 中: 暂停粒子系统 根据你们所看到的,它开始于一个随机放射方向的粒子系统,然后停止,,这个暂停特效比直着向前扩展要好,而且可以实现通过贴上一个代码在粒子系统中让它暂停然后继续 public class ParticleScript : MonoBehaviour { public float timeToPause = 2.0f; private ParticleSystem system; private float time; void Awake() { system = GetComponent (); } void Update() { time += Time.deltaTime; ...
不管开发什么游戏,游戏存档是个必不可少的功能,你可能需要保存玩家的一些信息,比如身上穿戴的装备,玩家角色所处的场景等各种信息,对于存档功能 (数据持久化),Unity提供了原生技术Playerprefs,它的优点是理解和使用起来十分简单,缺点是对于大型数据存储时会力不从心,所以本文会 介绍如何使用XML来实现游戏存档和存档加密的功能。 编程环境 Unity 5.2.2 OS X EI Capitan 10.11.6 你将学到什么? 如何使用XML对数据进行序列化和反序列化操作。 如何对数据进行加密和解密操作。 不同平台下文件存放的具体路径和规则。 整体思路解析 数据存储和加密的主要逻辑思路: 使用 XmlSerializer 类对需要保存的数据类进行序列化操作,得到一串字符串。 将得到的字符串使用 RijndaeManaged 类和 ICrytoTransform 类进行加密操作,获得加密之后的字符串。 根据平台类型,确定文件保存的路径。 使用StreamWriter类将字符串保存到文件中。 数据加载和解密的主要逻辑思路: 根据存档文件的路径,使用StreamReader类读取文件中的内容(一串加密过的字符串)。 使用 RijndaeManaged 类和 ICrytoTransform 类对读取的文件内容进行解密操作,获得一串解密后的字符串。 使用 XmlSerializer 类对解密后的字符串进行反序列化操作,获得具体的游戏数据,并使用数据对游戏中的数据进行转换操作。 一、准备工作 在实现具体保存操作前,我们需要先实现我们要保存的游戏数据,本文使用一个简化的数据,假设我们保存的数据是MyPlayer类,里面记录着以下信息: 玩家的名字 玩家的等级 玩家的武器(包括物品ID,物品名字信息) 玩家的衣服(包括物品ID,物品名字信息) 下面我们就来具体实现这些数据,首先我们新建一个Unity工程,工程名字大家可以自定义,然后我们新建一个C#文件,命名为 Item ,打开item文件,并进行如下编辑: Item代码 在Item类中,我们定义了两个公共成员,_itemID和_name,分别代表物品的ID和名字。 然后我们在构造函数里面初始化了物品ID和名称。 最后我们又创建了一个构...