当前位置:   article > 正文

移动端Alpha Test费性能的原因_移动端 alphatest与translucent

移动端 alphatest与translucent

SwordMaster关注

0.072018.03.01 18:31:35字数 393阅读 4,841

调查了下现在移动端的GPU厂商,主要有Imagenation technology公司的Power VR 系列

高通的骁龙系列,Mali的MP系列。


各品牌手机使用的GPU

苹果手机->Power VR

魅族->Power VR

三星手机->骁龙

小米手机->骁龙

华为手机->Mali

每家芯片的特性不同,根据向framebuffer写法的不同,分为tile-based的mobile cpu,如PowerVR,Mali,一部分老版本Adreno。对tile-based的GPU来说,一旦使用打开alpha test或者其他discard功能的指令,就意味着这个fragment shader上不再只绘制一次像素了。这样会增加额外的性能消耗,所以一般都是建议用不实用alpha test,或者用alpha blend来代替。


PowerVR文档对Alpha Test的建议:

传送门:http://cdn.imgtec.com/sdk-documentation/PowerVR+Performance+Recommendations.The+Golden+Rules.pdf

个人理解:

由于Power VR使用了基于瓦片的延时渲染技术。

普通物体由于Early-Z技术的存在,使得被遮挡的物体片元的着色器不会被执行,马上更新深度缓冲的值

使用了Alpha Test的物体破坏了Early-Z技术,硬件检测后禁掉Early-Z技术,使得即使被遮挡的片元的片元着色器执行完才更新深度缓冲的值。(片元着色器被多执行了)

使用Alpha Test会导致性能降低,所以尽量使用Alpha Blend代替Alpha Test.

原文链接:https://www.jianshu.com/p/b32f4f70b4d0

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/107736
推荐阅读
相关标签
  

闽ICP备14008679号