unity中的渲染优化技术
1.CPU
过多的drawCall 使用批处理技术来减少drawCall数目
复杂的脚本或者物理模拟
2.GPU
顶点处理 减少顶点数 优化几何体 使用Lod技术 使用遮挡剔除技术
过多的顶点
过多的逐顶点计算
片元处理
过多的片元
过多的逐片计算
优化方案;
减少需要处理的片元数目
控制绘制顺序
警惕透明问题
减少以实时的关照
4.带宽
使用了尺寸很大且未压缩的纹理
分辨率过高的帧缓存
优化方案:
减少纹理大小
利用分辨率缩放
动态批处理:
多pass回中断批处理
批处理注意事项:
尽可能用静态批处理,但随时要小心内存的消耗,并且经过静态批处理的物体不可以再被移动
如果无法静态,要动态批处理的话,小心上面提到的各种限制,列
静态批处理更占用内存空间
对于游戏里面的金币可以使用动态批处理
对于游戏里的动画,不能使用静态批处理
批处理需要把多个模型变换到世界空间再合并他们,如果shader中存在不一些基于模型空间下的坐标运算,那么往往会得到错误的结果
一个解决方案是使用DisableBatching标签来强制使用shader材质
16.5 减少需要处理的的片元数目减少overdraw
减低GPU瓶颈
overdraw指的是一个像素被绘制了多次
为了避免overdraw,重要的优化策略是控制绘制顺序
深度测试的原因,我们可以保证物体都是从前往后绘制的,就可以最大限度减少overdraw,因为在后面绘制的物体无法通过深度测试,因此不会再进行后面的渲染处理
渲染数目小于2500的对象被认为是不透明物体,绘制顺序是从前往后而其他的是从后往前的,意味着我们尽可能的把物体队列设置为不透明物体,尽量避免使用半透明队列
减少实时光照和阴影
unity中的渲染优化技术相关推荐
- 第16章 Unity中的渲染优化技术
程序优化的第一条准则: 不要优化.程序优化的第二条准则(仅针对专家! 〉: 不要优化. 一一Michael A. Jackson 在进行程序优化的时候,人们经常会引用英国的计算机科学家Michael ...
- UnityShader入门精要——Unity中的渲染优化技术(三)
减少需要处理的顶点数目 1 优化几何体 尽可能减少模型中三角面片的数目,一些对于模型没有影响.或是肉眼非常难察觉到区别的顶点都要尽可能去掉. 移除不必要的硬边以及纹理衔接,避免边界平滑和纹理分离. 2 ...
- UnityShader入门精要——Unity中的渲染优化技术(二)
减少DrawCall数目 最常见的优化技术--批处理.实现原理为减少渲染每一帧所需的drawcall数目.使用同一个材质的物体可以一起处理. 优点 缺点 动态批处理 切处理都是Unity 自动完成的, ...
- Unity性能优化要点分析(二) 渲染优化技术
本章摘录自UnityShader入门精要的第16章内容. 移动平台的特点 移动平台的GPU架构有很大不同,由于芯片架构的不同,一些游戏往往需要针对不同的芯片发布不同的版本,以便对每种芯片进行更有针对性 ...
- unity 不再渲染局部_在Unity3D中的渲染优化-减少需要处理的顶点数目
1.优化几何体 3D游戏制作通常都是由模型制作开始的.我们应该尽可能减少模型中三角面片的数目,一些对于模型没有影响,或者是肉眼很难察觉到区别的顶点都要尽可能去掉.为了尽可能减少模型中的顶点数目,美工人 ...
- 【Unity】Unity中的异步编程技术详解
异步编程技术对于很多手游开发者来说,都是不可避免的话题,因为手游的游戏逻辑包含太多需要并发或者希望能够并行的逻辑.现在的手机硬件发展迅速,多核已成为主导趋势,对于3A级大作来说,如何充分利用手机多核的 ...
- 关于Unity中的UGUI优化,你可能遇到这些问题
一.界面制作 Q1:UGUI里的这个选项 ,应该是ETC2拆分Alpha通道的意思,但是在使用中并没起作用?请问有没有什么拆分的标准和特别要求呢? 据我们所知,alpha split 的功能最初只对 ...
- ugui unity 取消选择_关于Unity中的UGUI优化,你可能遇到这些问题
关键字 界面制作 网格重建 界面切换 加载相关 字体 一.界面制作 Q1:UGUI里的这个选项 ,应该是ETC2拆分Alpha通道的意思,但是在使用中并没起作用?请问有没有什么拆分的标准 ...
- Unity最全渲染优化(LOD、遮挡剔除、光照贴图、Mash合并)
LOD技术 1.创建空物体,添加组件Lod Group 2.把不同细节的模型分别拖入到相对应的LOD0.LOD1.LOD2中去 3.调节每个区间的大小,测试 遮挡剔除 概念:只渲染那些在视野内的游戏物 ...
最新文章
- Ubuntu下,Java中利用JNI调用codeblocks c++生成的动态库的使用步骤
- 今年Java面试必问的这些技术面,看完这一篇你就懂了
- Java生鲜电商平台-统一异常处理及架构实战
- oracle如何建pdb,Oracle 12c 命令行创建PDB
- 【Flink】Flink 实现 End to End 的 EXACTLY_ONCE
- 对R语言发展与历史的一个初步认识
- Linux系统盘爆满根目录100%,又找不到占空间的大文件 原因与解决方法
- “智慧城市”如火如荼 与“数字城市”又有何差别?
- 【word论文排版教程4】样式的应用
- SQL学习03---数据库系统概念第6版第3章习题答案
- GTD时间管理学习心得(2)
- 阿里双十一数据库技术
- java半角英数check_jQuery教程之输入内容控制为半角英数字+限定符号问题如何解决...
- Qt qss 九宫格
- docker容器化部署
- 关系数据理论(回顾关系模式、数据依赖、不规范的关系模式存在的问题、 函数依赖、非平凡函数依赖/平凡函数依赖、完全函数依赖/部分函数依赖定义、传递函数依赖,码)
- 重学计算机网络(三) - DHCP IP的孽缘
- 2.13 描述性统计(平均数,中位数,中数,数据的离散度(极差,平均绝对偏差,方差标准差))...
- 20170622《指导生活的算法》
- 3.Containerd容器运行时的配置浅析与知识扩充实践