drawcall优化_unity降低drawcall

drawcall优化_unity降低drawcallunity3D对于移动平台的支持无可厚非,但是也有时候用Unity3D开发出来的应用、游戏在移动终端上的运行有着明显的效率问题,比如卡、画质等各种问题。自己在做游戏开发的时候偶有所得。对于主要影响性能的因素做个总结。主要因素有:       1.     Savedbybatching值过大  —->这个值主要是针对Mesh的批处理,这个值越高,应用就越卡

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

unity3D 对于移动平台的支持无可厚非,但是也有时候用Unity3D 开发出来的应用、游戏在移动终端上的运行有着明显的效率问题,比如卡、画质等各种问题。自己在做游戏开发的时候偶有所得。对于主要影响性能的因素做个总结。

drawcall优化_unity降低drawcall

主要因素有:

        1.      Saved by batching 值过大   —- > 这个值主要是针对Mesh的批处理,这个值越高,应用就越卡   

        2.     Drawcall 值过大 —- >  Drawcall 值过大,所需要的 GPU 的处理性能较高,从而导致CPU的计算时间过长,于是就卡了

        3.     点、面过多           —- > 点、面过多,GPU 根据不同面的效果展开计算,并且CPU计算的数据也多,所以效果出来了,但是卡巴斯基

由于 Saved by batching 和 Drawcall 值过大所引起的卡的问题我所做的优化方式有:

        1.    对于模型 :Mesh 合并,有个不错的插件(DrawCall Minimizer   —>  直接上Asset Store 下载即可,免费的,而且有文档,很容易上手)

        2.    对于UI  :  尽量避免使用Unity3D自带的 GUI 换用 NGUI或者EZGUI;因为这两个UI插件对于UI中的图片处理是将UI图片放置在一个 Atlas 中,一个 Atlas 对应一个Drawcall

        3.   对于灯光: 可以使用 Unity3D 自带的  Lightmapping 插件来烘焙场景中的灯光效果到物体材质上 

        4.  对于场景: 可以使用 Unity3D 自带的 Occlusion Culling 插件把静止不动的场景元素烘焙出来

        4.   对于特效:尽量把材质纹理合并

对于Unity3D 在移动终端上支持的Drawcall 数到底多少,主要是跟机子性能有关的,当然也不是说值小性能就一定没问题(本人亲测,也有17就卡的,主要是模型材质纹理过大所引起的),目前我做的是70左右的,还OK,挺正常的

 

由于点、面过多所导致的性能问题,最好用简模,用四面体来做复杂的模型,但是面、点也别太多,至于Unity3D 到底支持多少点、面的说法各异,我也搞不懂,总之少些肯定OK

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193729.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++ 中的左值和右值

    一、前言一直以来,我都对C++中左值(lvalue)和右值(lvalue)的概念模糊不清。我认为是时候好好理解他们了,因为这些概念随着C++语言的进化变得越来越重要。二、左值和右值——一个友好的定义首先,让我们避开那些正式的定义。在C++中,一个左值是指向一个指定内存的东西。另一方面,右值就是不指向任何地方的东西。通常来说,右值是暂时和短命的,而左值则活的很久,因为他们以变量的形式(v…

    2022年4月7日
    63
  • 史上最全的中高级JAVA工程师-面试题汇总

    史上最全的中高级JAVA工程师-面试题汇总史上最全的java工程师面试题汇总,纯个人总结,精准无误。适合中高级JAVA工程师。

    2022年6月13日
    30
  • ifconfig 与 ip addr 命令详解 – 学习/实践

    ifconfig 与 ip addr 命令详解 – 学习/实践1.应用场景 主要用于了解学习,掌握使用IP地址相关知识, 如何查看IP信息,以及各个参数代表的含义 2.学习/操作 1.文档阅读 网络协议概论|Laravel学院-不定期分享之ifconfig与ipaddr命令详解 2.整理输出 2.1如何查看机器的IP地址 我们在Linux系统查看IP地址通常有以下两种方式: 1)ifconfig 2)ipaddr

    2022年7月27日
    28
  • 高通平台dtb文件的加载过程「建议收藏」

    高通平台dtb文件的加载过程「建议收藏」高通平台dtb文件的加载过程高通平台对dts的两种打包方式zImage-dtbdt.imgzImage-dtb方式zImage-dtb的编译二进制文件查看lk的加载过程代码分析dt.img方式dt.img的编译lk的加载过程新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyP…

    2025年7月5日
    6
  • 深入理解iso七层模型_网络模型的七层结构

    深入理解iso七层模型_网络模型的七层结构ISO七层模型是国际标准化组织用于计算机或者通信系统间相互联系的标准体系.他是一个七层的,抽象的模型体.应用层(Application):网络服务与最终用户的一个接口。协议有:HTTPFTPTFTPSMTPSNMPDNSTELNETHTTPSPOP3DHCP表示层(PresentationLayer):数据的表示、安全、压缩。(

    2025年5月23日
    3
  • 【图文】什么是php位运算与二进制[通俗易懂]

    【图文】什么是php位运算与二进制

    2022年2月20日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号