摘要:技术要点: 不用的粒子返回缓冲池按照单个粒子名字创建一个池,当a池上一次操作时间(回收对象)超过阈值,每隔一段时间删除池里一个GameObject,可针对单个粒子配表,频繁使用的,驻留时间更长一个完整池被删除,增加GC权值,GC权值达到最大值调用System.GC.Collect() 遇到问题: 父
阅读全文
摘要:ui上面展示粒子一般来说有两种方案 1.通过rendertexture渲染,可以完美处理层级问题,不过性能不好,多个摄像机 2.直接放到ui界面调整特效sort in layer,不过如果ui特效穿插多,层级不好管理,且多canvas造成合批问题 现在来第三种方法粒子BakeMesh(要2018.2
阅读全文
摘要:https://referencesource.microsoft.com/#mscorlib/system/collections/queue.cs 概述 初始化:默认32个,每次2倍扩。所以在初始化时,能预设大小,防止频繁扩容 public Queue() : this(32, (float)2
阅读全文
摘要:转https://www.cnblogs.com/forever-ys/p/15322022.html https://referencesource.microsoft.com/#mscorlib/system/collections/stack.cs 概述: 数组栈: Push不够时进行扩容Ar
阅读全文
摘要:Image怎么绘制的 Unity中渲染的物体都是由网格(Mesh)构成的,而网格的绘制单元是图元(点、线、三角面) 绘制信息都存储在Vertexhelper类中,除了顶点外,还包括法线、UV、颜色、切线。 Rebuild概念 Canvas负责将子节点的UI元素的网格合并,并生成相应的渲染指令再发送到
阅读全文
摘要:1. button从按下到响应的过程 1.先是EventSystem在Update中调用当前输入模块InputModules的Process方法处理所有的鼠标事件, 2.并且输入模块会调用RaycastAll来得到目标信息, 3.通过子物体未挂载IEventSystemHandler,再找父物体方式
阅读全文
摘要:两个栈实现队列:栈实现先进先出 栈1负责队尾,栈2负责队头每次入队,栈2无元素且栈1无元素,入栈2;否则入栈1每次出队,栈2有元素,出栈2顶;否则把全部栈1入栈2,再出栈2顶 bool Pop(ref int value) { if (m_stack2.Count > 0) { value = m_
阅读全文
摘要:https://www.cnblogs.com/slysky/p/7919114.html https://blog.csdn.net/j756915370/article/details/105906839 概括: 通过栈来实现。lua调用c#就是将lua层的参数和c#导出函数入栈,然后执行函数。
阅读全文
摘要:https://www.jb51.net/article/86840.htm 泛型for基本格式 for <var-list> in <exp-list> do <body> end 流程 首先,初始化,计算 in 后面表达式的值,表达式应该返回 泛型for 需要的三个值:迭代函数、状态常量、控制变
阅读全文
摘要:概述: 浅拷贝:tabB = tabA ,相当于是对象起别名,或者说赋值指针,tabA的任何改动也会实装在tabB上; 深拷贝:tabC = DeepCopy(tabA)。,遍历k,v在tabA创建。遍历只需要对 table 类型进行递归拷贝即可。其它所有类型直接用赋值拷贝或浅拷贝。 https:/
阅读全文
摘要:转https://zhuanlan.zhihu.com/p/21960395 原理: 获取ab里面所有依赖每个依赖的全路径作为字典key,被一个ab应用+1 public void CheckABInfo(AssetBundle ab, string abName) { EditorSettings
阅读全文