NOPI c# 处理excel的第三方插件。
二叉树
概念:每个结点最多有两棵子树,左子树和右子树,次序不可以颠倒。
三种遍历方法。
1:前序遍历 根节点->左节点->右节点
2:中序遍历 左节点->根节点->右节点
3:后序遍历 左节点->右节点->根节点
4:层次遍历 每一层从左到右输出

bit 位是计算机表示数据最小的单位
byte 字节
c# char 16 bit = 2 byte
int 32 bit = 4 byte
1k = 1024 byte = 1024 * 8 bit

sizeof 只能用于值类型

位运算
& 两个都为1,等于1
| 有一个为1,等于1
~ 去相反、
^ 两个不一样,等于1
<< 左移一位 等于 x2

右移 一位 等于 /2 >>
可代替 加减乘除符号,进行四则运算。

Mipmap技术有点类似于LOD技术,但是不同的是,LOD针对的是模型资源,而Mipmap针对的纹理贴图资源
使用Mipmap后,贴图会根据摄像机距离的远近,选择使用不同精度的贴图。
缺点:会占用内存,因为mipmap会根据摄像机远近不同而生成对应的八个贴图,所以必然占内存!
优点:会优化显存带宽,用来减少渲染,因为可以根据实际情况,会选择适合的贴图来渲染,距离摄像机越远,显示的贴图像素越低,反之,像素越高!
ui中的 纹理贴图,一般不需要生成mipmap

四元数用来做 模型旋转,相对于欧拉角,可以避免万向锁的出现。
优点:避免万向锁,可以进行平滑插值,只需要一个思维的四元数就可以执行绕任意过原点的向量旋转。
缺点:多了一个维度,使用不直观

unity 协程和线程
1:共同点 都是等待一段时间执行代码,一般用作等待某个操作完成之后执行后边代码
2:不同,协程是在主线程中运行的,并不是一个线程。 unity在每帧都会处理对象上的协成,和update一样每帧执行,
碰到yield就会执行后边的代码。
yield return null, 通常用作等待一针执行。会在下一帧帧的时候执行后边代码。

和update一样,coroutine只有在 gameobject.active = true 的时候才会执行。
执行顺序 udpate->lateupdate->coroutine

coroutine常用于,www加载, 延迟几秒处理,下一帧处理
线程thread 常用于 网络消息的处理,其他io阻塞处理。