1.CPU

过多的drawCall 使用批处理技术来减少drawCall数目

复杂的脚本或者物理模拟

2.GPU

顶点处理 减少顶点数 优化几何体 使用Lod技术 使用遮挡剔除技术

过多的顶点

过多的逐顶点计算

片元处理

过多的片元

过多的逐片计算

优化方案;

减少需要处理的片元数目

控制绘制顺序

警惕透明问题

减少以实时的关照

4.带宽

使用了尺寸很大且未压缩的纹理

分辨率过高的帧缓存

优化方案:

减少纹理大小

利用分辨率缩放

动态批处理:

多pass回中断批处理

批处理注意事项:

尽可能用静态批处理,但随时要小心内存的消耗,并且经过静态批处理的物体不可以再被移动

如果无法静态,要动态批处理的话,小心上面提到的各种限制,列

静态批处理更占用内存空间

对于游戏里面的金币可以使用动态批处理

对于游戏里的动画,不能使用静态批处理

批处理需要把多个模型变换到世界空间再合并他们,如果shader中存在不一些基于模型空间下的坐标运算,那么往往会得到错误的结果

一个解决方案是使用DisableBatching标签来强制使用shader材质

16.5 减少需要处理的的片元数目减少overdraw

减低GPU瓶颈

overdraw指的是一个像素被绘制了多次

为了避免overdraw,重要的优化策略是控制绘制顺序

深度测试的原因,我们可以保证物体都是从前往后绘制的,就可以最大限度减少overdraw,因为在后面绘制的物体无法通过深度测试,因此不会再进行后面的渲染处理

渲染数目小于2500的对象被认为是不透明物体,绘制顺序是从前往后而其他的是从后往前的,意味着我们尽可能的把物体队列设置为不透明物体,尽量避免使用半透明队列

减少实时光照和阴影

unity中的渲染优化技术相关推荐

  1. 第16章 Unity中的渲染优化技术

    程序优化的第一条准则: 不要优化.程序优化的第二条准则(仅针对专家! 〉: 不要优化. 一一Michael A. Jackson 在进行程序优化的时候,人们经常会引用英国的计算机科学家Michael ...

  2. UnityShader入门精要——Unity中的渲染优化技术(三)

    减少需要处理的顶点数目 1 优化几何体 尽可能减少模型中三角面片的数目,一些对于模型没有影响.或是肉眼非常难察觉到区别的顶点都要尽可能去掉. 移除不必要的硬边以及纹理衔接,避免边界平滑和纹理分离. 2 ...

  3. UnityShader入门精要——Unity中的渲染优化技术(二)

    减少DrawCall数目 最常见的优化技术--批处理.实现原理为减少渲染每一帧所需的drawcall数目.使用同一个材质的物体可以一起处理. 优点 缺点 动态批处理 切处理都是Unity 自动完成的, ...

  4. Unity性能优化要点分析(二) 渲染优化技术

    本章摘录自UnityShader入门精要的第16章内容. 移动平台的特点 移动平台的GPU架构有很大不同,由于芯片架构的不同,一些游戏往往需要针对不同的芯片发布不同的版本,以便对每种芯片进行更有针对性 ...

  5. unity 不再渲染局部_在Unity3D中的渲染优化-减少需要处理的顶点数目

    1.优化几何体 3D游戏制作通常都是由模型制作开始的.我们应该尽可能减少模型中三角面片的数目,一些对于模型没有影响,或者是肉眼很难察觉到区别的顶点都要尽可能去掉.为了尽可能减少模型中的顶点数目,美工人 ...

  6. 【Unity】Unity中的异步编程技术详解

    异步编程技术对于很多手游开发者来说,都是不可避免的话题,因为手游的游戏逻辑包含太多需要并发或者希望能够并行的逻辑.现在的手机硬件发展迅速,多核已成为主导趋势,对于3A级大作来说,如何充分利用手机多核的 ...

  7. 关于Unity中的UGUI优化,你可能遇到这些问题

    一.界面制作 Q1:UGUI里的这个选项 ,应该是ETC2拆分Alpha通道的意思,但是在使用中并没起作用?请问有没有什么拆分的标准和特别要求呢? 据我们所知,alpha split 的功能最初只对 ...

  8. ugui unity 取消选择_关于Unity中的UGUI优化,你可能遇到这些问题

    ​关键字 界面制作 ​网格重建 ​界面切换 ​加载相关 ​字体 ​ 一.界面制作 Q1:UGUI里的这个选项 ,应该是ETC2拆分Alpha通道的意思,但是在使用中并没起作用?请问有没有什么拆分的标准 ...

  9. Unity最全渲染优化(LOD、遮挡剔除、光照贴图、Mash合并)

    LOD技术 1.创建空物体,添加组件Lod Group 2.把不同细节的模型分别拖入到相对应的LOD0.LOD1.LOD2中去 3.调节每个区间的大小,测试 遮挡剔除 概念:只渲染那些在视野内的游戏物 ...

最新文章

  1. Ubuntu下,Java中利用JNI调用codeblocks c++生成的动态库的使用步骤
  2. 今年Java面试必问的这些技术面,看完这一篇你就懂了
  3. Java生鲜电商平台-统一异常处理及架构实战
  4. oracle如何建pdb,Oracle 12c 命令行创建PDB
  5. 【Flink】Flink 实现 End to End 的 EXACTLY_ONCE
  6. 对R语言发展与历史的一个初步认识
  7. Linux系统盘爆满根目录100%,又找不到占空间的大文件 原因与解决方法
  8. “智慧城市”如火如荼 与“数字城市”又有何差别?
  9. 【word论文排版教程4】样式的应用
  10. SQL学习03---数据库系统概念第6版第3章习题答案
  11. GTD时间管理学习心得(2)
  12. 阿里双十一数据库技术
  13. java半角英数check_jQuery教程之输入内容控制为半角英数字+限定符号问题如何解决...
  14. Qt qss 九宫格
  15. docker容器化部署
  16. 关系数据理论(回顾关系模式、数据依赖、不规范的关系模式存在的问题、 函数依赖、非平凡函数依赖/平凡函数依赖、完全函数依赖/部分函数依赖定义、传递函数依赖,码)
  17. 重学计算机网络(三) - DHCP IP的孽缘
  18. 2.13 描述性统计(平均数,中位数,中数,数据的离散度(极差,平均绝对偏差,方差标准差))...
  19. 20170622《指导生活的算法》
  20. 3.Containerd容器运行时的配置浅析与知识扩充实践

热门文章

  1. 毕业论文降重的有关经验
  2. 对于感情的一点小感悟
  3. 专有钉钉下载(windows、IOS、Android)地址
  4. 教你如何使用闲鱼引流
  5. 射影几何----帕普斯定理和帕斯卡定理证明对比版
  6. Linux下使用vim 编写c语言程序
  7. zcmu1411 / 训练赛3-Problem E: 喜闻乐见的a+b
  8. 《Linux C编程从入门到精通》一1.3 Shell的使用基础
  9. chart.js画图
  10. 2016年蓝桥杯A组 第九题 密码脱落