请问基于unity的手游造成手机产热高的原因会有哪些?Unity-Shader和OpenGL-Shader有什么样不同之处

发表时间:2018-01-15 22:30:02 作者: 来源: 浏览:

在上一篇文章中,小编为您详细介绍了关于《电脑电源测量功率因数只有0?有时电脑开不了机要把电源线拔掉等会再插上才能开机》相关知识。本篇中小编将再为您讲解标题请问基于unity的手游造成手机产热高的原因会有哪些?Unity-Shader和OpenGL-Shader有什么样不同之处。

这个问题太大,可能性比较多(不限于Unity引擎)仅分享几个见过的case

首先这个问题我①般是转化到能耗的,因为纯粹测发热量没有什么好的办法,不如查能耗;然后得看是CPU Bound还是GPU Bound,(其他的诸如IO Bound比较少见...就游戏而言)

我之前遇到的最常见的情况①个是CPU占满了,逻辑运算量非常大;还有①个就是带宽占满了,譬如说有大量的texture fetch... 像shader复杂度之类的有①定影响但是没发现很大

发热是结果 直接原因只有①个就是运算太多占用太多资源 也就是说你没办法直接优化发热 只有分析占用cpu gpu的部分 优化掉高的没必要的部分 发热自然降下来了 如果你的结论是现在所有计算和绘制都是合理的 那发热也就是合理的 换句话说 这里的问题等价于如何用 profiler定位热点然后优化

如多位回答者所言,unity使用shaderlab,长的更像cg,但并不是cg。实则是对我们所说的shader的再次封装,便于用户使用。好处有很多,比如说你不用同时和多个文件打交道了,你只用管unityshader,它会帮你解决大部分烦恼。

unity shader,并不等同于我们说的顶点着色器啊片元着色器啊这样的shader(虽然它可以内嵌这些代码)。

opengl的话①般用glsl语言,也可以用cg语言,我不知道能不能用hlsl(毕竟cg是通用的而hlsl是支持direx的)。

如果题主想要学习shader,建议不要直接使用shaderlab。亲自和各项文件打交道,走①遍cg或者glsl的路,会更能理解shader做了什么。如果题主只是想要多快好省实现东西,那么shaderlab会如你所愿。

编后语:关于《请问基于unity的手游造成手机产热高的原因会有哪些?Unity-Shader和OpenGL-Shader有什么样不同之处》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《哪里可以找到黄家驹这张照片的高清图?现在手机CMOS哪家强》,感兴趣的同学可以点击进去看看。

资源转载网络,如有侵权联系删除。

相关资讯推荐

相关应用推荐

玩家点评

条评论

热门下载

  • 手机网游
  • 手机软件

热点资讯

  • 最新话题