什么是SRP SRP是Unity的可编程渲染管线(Scriptable Render Pipeline), 是一项可以通过 C# 脚本来控制渲染的功能。它属于一种轻量的 API,允许开发者使用 C# …
借用场景LOD的思想,既然远处的模型替换成了低模,动画看上去也不会动了,那么阴影贴图渲染其实每帧变化并不大,也会随着级联阴影层级的提高变化越来越小; 因此可以想到,对远距离的级联阴影级别下,可以不对每…
Unity中的内存 托管内存:主要是指使用托管堆或者垃圾收集器自动分配和管理的内存,也包括脚本堆栈与虚拟机内存; C#非托管内存:可以在C#下与Unity Colloection名字空间和包结合使用,…
IOS平台Unity程序启动过程 安卓平台Unity程序启动过程 优化建议
减少方法到委托的隐式转换 避免频繁直接将方法当作参数直接传入,因为每次调用时都会产生一个委托实例,应该将方法缓存起来: private Func<object> func; private…
场景 在Unity中,往往需要使用到一张新的RenderTexture来做一些画面处理的情况,如UI的滤镜、模糊等; 以UI弹窗的模糊背景为例,我们的一个实现思路是,编写一个BlurShader,在打…
Shader数据类型精度 Float(32bit):位置与纹理坐标信息 Half(16bit):纹理坐标与颜色信息 Fixed(11bit):颜色信息(SRP下已不支持) Half和Float 有时候…
Unity Terrain Unity的地形工具在移动端效率并不高,尤其Terrain Shader不够轻量; 一般来说会采用地形Mesh替代,这里借用第三方插件Terrain To Mesh自动生成…
哪些内容需要被Batching 广义上讲: 资源Batching(Mesh、Textur、Shader参数、材质属性) DrawCall Batching(Static Batching、Dynami…
哪些是需要简化的内容 广义上讲: 运行效率较重的资源 低效、不合适的功能 Unity下的简化 Quality Settings 通过烘焙光照简化实时光照 通过BoundingBox或替代体碰撞代替Me…