摘要:Application.dataPath 返回程序的数据文件所在文件夹的路径。例如在Editor中就是Assets了。 Application.streamingAssetsPath 返回流数据的缓存目录,返回路径为相对路径,适合设置一些外部数据文件的路径。会随包导出。 1. 只读不可写。 2. 主 阅读全文
posted @ 2020-02-27 16:41 骑驴看世界 阅读 (12) 评论 (0) 编辑
摘要:当我用new创建一个对象时,当可分配的内存不足GC就会去回收未使用的对象,但是GC的操作是非常复杂的,会占用很多CPU时间,对于移动设备来说频繁的垃圾回收会严重影响性能。下面的建议可以避免GC频繁操作。 1)减少用new创建对象的次数,在创建对象时会产生内存碎片,这样会造成碎片内存不法使用2)使用公 阅读全文
posted @ 2020-02-27 16:37 骑驴看世界 阅读 (6) 评论 (0) 编辑
摘要:几种常见数据结构的使用情景 Array需要处理的元素数量确定并且需要使用下标时可以考虑,不过建议使用List<T> ArrayList不推荐使用,建议用List<T> List<T>泛型List需要处理的元素数量不确定时 通常建议使用 LinkedList<T>链表适合元素数量不固定,需要经常增减节 阅读全文
posted @ 2020-02-27 16:34 骑驴看世界 阅读 (12) 评论 (0) 编辑
摘要:结构体(sturct)是一种值类型,而类(class)是引用类型。区别在于复制方式,值类型的数据是值赋值,引用类型的数据是引用复制。 结构体使用栈存储(Stack Allocation),而类使用堆存储(Heap Allocation)。 栈的空间相对较小.但是存储在栈中的数据访问效率相对较高。 堆 阅读全文
posted @ 2020-02-27 16:27 骑驴看世界 阅读 (6) 评论 (0) 编辑
摘要:UGUI网格重建 UGUI网格重建是以Canvas为单位进行的,整个Canvas下面的UI元素会合并成一个Mesh进行更新。 1. 动静分离。把Canvas下面动态的元素拆分到另外一个Canvas下面。 2. 对于一些UI颜色变化,不去修改image上自带的color属性(实际修改的是image顶点 阅读全文
posted @ 2020-02-27 16:20 骑驴看世界 阅读 (11) 评论 (0) 编辑
摘要:获取一个全局基本数据类型 使用LuaEnv.Global.Get<T>("name")就可以 1 var str = luaEnv.Global.Get<string>("str"); 2 var num1 = luaEnv.Global.Get<int>("num1"); 访问一个全局table 阅读全文
posted @ 2020-02-24 21:00 骑驴看世界 阅读 (7) 评论 (0) 编辑
摘要:xLua中lua文件加载方式 1. 直接执行字符串方式 1 LuaEnv luaenv = new LuaEnv(); 2 luaenv.DoString("CS.UnityEngine.Debug.Log('hello world')"); 3 luaenv.Dispose(); 2. 通过req 阅读全文
posted @ 2020-02-24 15:20 骑驴看世界 阅读 (4) 评论 (0) 编辑
摘要:为什么选择xLua 1. 易用性 Unity全平台补丁技术,可以运行时把C#实现(方法、操作符、属性、事件、构造函数)替换为lua的实现 自定义struct,枚举在lua和C#之间传递无C#的gc alloc 编辑器下无需生成代码开发更轻量 2. 热补丁 开发只用C# 运行也只用C#,性能比纯lua 阅读全文
posted @ 2020-02-24 15:18 骑驴看世界 阅读 (8) 评论 (0) 编辑