前言
一、精度优化
1、三种精度 fixed / half / float
2、位置坐标、物理坐标类使用float
3、HDR颜色、方向向量类使用half
4、普通纹理、颜色类使用 fixed
5、实际上,使用的精度取决于 平台 和 GPU
6、现在桌面级GPU都是直接采用 float , Shader中的 fixed / half / float最后都是用的 float
7、现代移动端GPU大多仅支持 half 与 float ,所以能用 half 的就用 half
8、fiixed 仅用于较旧的移动 GPU
二、能放顶点着色器的不要放片段着色器中
三、多Pass少用
一个SubShader内如果含有多个Pass(不包含Unity中特殊使用的),则会渲染多次,同时将不能进行合批
四、小心使用 AlphaTest 和 ColorMask
AlphaTest :透明测试
但是,使用 AlphaTest 是避免不了的。
因为,有很多地方用到 : 树叶透光、草地、网格围栏、渔网袜效果等。不可能通过建模来实现,因为比较消耗性能
ColorMask : 输出颜色通道
五、NoScaleOffset :不开启 Tilling 和 Offset面板
六、DisableBatching :不动态合批
同时影响 动态合批 与 静态合批
如果顶点上的计算需要在模型的本地空间下进行,则需要开启,否则最好不要开启
Unity中合批分为静态合批 和 动态合批
动态合批:
七、GrabPass 抓取屏幕
1、方式一:
2、方式二:
八、Surface Shader :表面着色器
九、ShaderLOD :配置分级
十、Overdraw :同一个像素被渲染多次
十一、变体优化
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。