- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 Unity3d 简单的消息系统
游戏开发过程中,消息系统是整个框架中比较重要的一部分,用得好可以使客户端框架“干净整洁”(私以为这个很重要),不然各种交叉访问,耦合度实在是不要太高啊!分析:需要一个全局的消息管理器,用于管理消息,可以添加,移除,清空,分发消息,这样一来,字典Dictionary< EventType, EventListenerDelegate>最合适不过了,当然也可以使用哈希表来做容器;EventType是
2017-10-29 15:22:25 768
原创 Unity3d 3D物体上实现事件监听
首先得加上EventSystem 事件系统然后再在相机上加上Physics Racaster组件在相关的脚本上重写需要的事件(注意需要引用using UnityEngine.EventSystems; ) 这类事件有很多 https://docs.unity3d.com/ScriptReference/EventSystems.IDropHandler.html
2017-10-29 14:30:54 987
转载 (转载)C# 的Hashtable和Dictionary比较
1、Dictionary是顺序存储,Hashtable则不是。比较明显的对比就是使用foreach,Dictionary是按照Add的顺序排列的,Hashtable则是无序的。2、单线程程序中推荐使用 Dictionary, 有泛型优势, 且读取速度较快, 容量利用更充分.3、在单线程的时候使用Dictionary更好一些,多线程的时候使用HashTable更好。多线程程序中推荐使用 Hashtab
2017-10-29 10:17:16 411
转载 (转载)Unity3d开发中常用的数据结构总结与分析
来到周末,小匹夫终于有精力和时间来更新下博客了。前段时间小匹夫读过一份代码,对其中各种数据结构灵活的使用赞不绝口,同时也大大激发了小匹夫对各种数据结构进行梳理和总结的欲望。正好最近也拜读了若干大神的文章,觉得总结下常用的数据结构以供自己也能灵活的使用变得刻不容缓。那么还是从小匹夫的工作内容入手,就谈谈在平时使用U3D时经常用到的数据结构和各种数据结构的应用场景吧。1.几种常见的数据结构这里主要总结下
2017-10-28 21:11:30 398
原创 Unity3d 简单的Avatar换装系统
换装所涉及的其实就是SkinnedMeshRenderer,它包含了网格,骨骼,材质;首先,需要一个源Model,它包含了换装所需要的所有东西。 带Bip字眼的是骨骼;然后需要就是我们的目标,只有骨骼; 换装的过程就是将Source中对应的SkinnedMeshRenderer信息复制到Target上,这里的信息就是网格,骨骼,材质;下面,一步步来:1、将Source实例化到场景当中,保存他的T
2017-10-28 12:55:49 5474 1
原创 Unity3d 对象池、子对象池的实现
ObjectPool.cs 对象池的实现码云简单示例:https://gitee.com/xianglinlove/ObjectPoolusing System.Collections.Generic;using UnityEngine;public class ObjectPool : Singleton<ObjectPool>{ // Resources目录 public s
2017-10-28 10:19:58 631
原创 Unity3d protobuf-net的使用
官网地址:http://code.google.com/p/protobuf-net 有时候会无法访问,所以提供了下面的下载 http://pan.baidu.com/s/1cqB1t8一、简单使用加压文件之后,会得到如下目录只做简单使用的话,只需要将Full/unity/protobuf-net.dll导入到Unity3d项目的Assets/Plugins目录下。 编写需要序列化的类Pers
2017-10-27 16:29:31 468
原创 Unity3d LitJson 的使用
Json官网 http://json.org/ 1、将LitJson.dll导入到Assets/Plugins/目录下,在类中通过using LitJson;就可以使用LitJson提供的一些接口了。2、关于LitJson会使用类JsonMapper和数据类型JsonData就可以了。JsonMapper主要提供了JsonMapper.ToJson和JsonMapper.ToObject两个方法。
2017-10-27 11:20:54 2336
原创 Unity3d 中的单例模式
U3D中许多地方需要用到单例,然后就是如下的情况:private static SoundManager _instance;public static SoundManager GetInstance{ return _instance;}void Awake(){ _instance = this;}假如以上的代码没有任何问题,但是每个单例都要加上这么一段代码也是挺烦
2017-10-26 20:18:43 300
原创 Unity3d XML的创建、更新、添加、删除和读取
关于Xml文件的相关操作创建、更新、添加、删除、读取using System.IO;using System.Xml;using UnityEngine;public class XmlOperation : MonoBehaviour{ private string path = ""; void Awake() { path= Application.
2017-10-26 19:39:27 2793
原创 Unity3d 文本文件的读取和解析
文本文件一般是.txt文件,读取和解析的方式都是非常简单的,文件编码必须是UTF-8。举个例子,通过英文逗号,来分割每一行字符串。1,张三,23,165,602,李四,24,167,623,王二,15,168,74using UnityEngine;public class LoadText : MonoBehaviour { // Use this for initialization
2017-10-26 17:25:54 5228 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人