内容会持续更新,有错误的地方欢迎指正,谢谢!
unity提供的最大优点就是跨平台。
以前项目移植很麻烦,现在只要一份代码,然后注意平台差异就好了。
单独使用的LightMapping效果很好,也就是提前静态烘焙,但由于只是把光影烘焙到贴图上,所以并不会对周围的动态物体产生真正的光照效果。这次来介绍一下光照探头LightProbe:
这是对LightMapping的一个补充功能,可以让动态物体在烘焙好的场景里面受到光的照射效果,就是全局光照的知识。LightProbe的用法就是在LightMapping的基础上加上了一些探头,探头越多,效果就越明显。
全局照明GI是一种系统,用于模拟光如何从表面反射到其他表面。例如:阳光击中红色沙发会导致红光反弹到其后面的墙上。
有两种使用方式:烘焙方式的GI(只能烘焙静态物体)和预计算的GI(可以做天气系统)。在手机平台上,效能和内存限制较高,烘焙的GI法就会比较适合,决定采用哪一种方法可以针对你的目标平台评估。
相当于一个GameObject模板,方便多次使用。
有两种实例化的方法:
预制体也有两种用途:
https://blog.csdn.net/billcyj/article/details/79441193
https://blog.csdn.net/billcyj/article/details/79539536
正常的前向渲染(Forward Shading)流程是把空间的点进行各种剪裁后进行处理,处理量远远大于我们最终看到的。所以延迟渲染出现了,它先将摄像机空间的点光栅化转化成屏幕坐标后再进行处理。这样就能减少处理的次数,从而提高效率。
https://blog.csdn.net/BillCYJ/article/details/79791056
https://blog.csdn.net/BillCYJ/article/details/79790951
https://blog.csdn.net/BillCYJ/article/details/79792110
https://blog.csdn.net/BillCYJ/article/details/79816418
https://blog.csdn.net/BillCYJ/article/details/79797228
https://blog.csdn.net/BillCYJ/article/details/79804116
Unity和Mono的关系:Unity引擎本身是由C++写出的,只不过Mono被嵌入到了Unity当中,为Unity提供了一个完整的虚拟机运行环境。
Unity的跨平台,就是通过Mono将C#代码编译成了通用中间语言CIL(Common Intermediate Language),然后Mono运行时利用 动态编译JIT 或 静态编译AOT 将CLI编译成目标平台的原生代码实现的。
先摆好骨骼,骨骼之间有继承关系,再蒙皮(也就是将皮肉绑到骨骼上,主要的工作就是分配权重),最后再做动画。
https://blog.csdn.net/BillCYJ/article/details/79879916
https://blog.csdn.net/BillCYJ/article/details/79884504
https://blog.csdn.net/BillCYJ/article/details/79888614
https://blog.csdn.net/BillCYJ/article/details/79935983
过度绘制(Overdraw)描述的是屏幕上的某个像素在同一帧的时间内被绘制了多次。在多层次重叠的 UI 结构里面,如果不可见的 UI 也在做绘制的操作,会导致某些像素区域被绘制了多次,同时也会浪费大量的 CPU 以及 GPU 资源。
注意:
1.资源路径相对于Resources目录,且不加后缀名
2.即使是后缀不同的资源,也不要重名,否则加载的时候要指定类型。
3.路径使用正斜杠”/”
4.Resources中的所有资源,不管用没用到,都会被打到客户端中
举例,读写Resources/Txt路径下的test.txt文件: string fullPath = "Txt/test";
string str = Resources.Load
####未完待续~