关于bitmapData,滤镜等一些性能测试
2015-03-31 12:07
295 查看
注:> 指性能更好
1.地图滚动 之 纯copyPixes 和 BitmapData.scroll + copyPixes
结论: copyPixes > scroll + copyPixes 耗时差距1/15 - 1/20 相差不大
2.地图滚动 之 BitmapData alpha 对性能影响
结论:无alpha > 有alpha 差距 30% 以上 机器越差 性能差距越大
注1:将无alpha的位图 放置于sprite 上 对sprite 操作相当于渲染有无alpha的位图
3.unlock 测试
unlock(Rectangle) 解锁区域 比 unlock 全部耗时 稍少
bitmapData.unlock() 即使位图没有任何更新也会渲染全部
4.displayObject.filters = [] 即使没有使用任何滤镜 任何变化 此代码也会渲染对象
顾 需要 .filters = null 不会渲染
5.关于bitmap.visible = false
位图设置不可见以后不会渲染 即使置换bitmapData也不会
6.关于 ColorTransform 滤镜 置换的测试
类似于
private var _ct:ColorTransform = new ColorTransform();
dis.transform.colorTransform = _ct
每帧设置Transfor 或滤镜 即使为同一对象 也会进行再渲染
7.关于bitmap + 滤镜 移动 消耗测试
对bitmap 一开始 加滤镜 每帧移动 则消耗 只有移动消耗 无滤镜消耗
如果每帧都置换bitmapData 则消耗 有 滤镜消耗
8.关于scrollRect测试
如果对对象使用滤镜 再每帧使用scrollRect 则每帧都有滤镜消耗
如果只移动x y 则没有滤镜消耗
9.关于 removeChild addChild + 滤镜测试
对象一开始使用滤镜 不停 removeChild addChild 则消耗有滤镜消耗
补
10.TextField即使没有被addChild 或 visible = false 文字改变也会因为更新文本布局消耗少量时间
约8字符 0.2ms 文字较多并由滤镜的情况 可以达到 1ms
11.关于 TextField cacheAsBitmap
文本在加了滤镜以后自动 cacheAsBitmap 以位图方式渲染,即使TextField 移动也依旧为位图 性能消耗很小
如果TextField 未加滤镜 且cacheAsBitmap = false 则文字移动消耗较大性能
持续更新
1.地图滚动 之 纯copyPixes 和 BitmapData.scroll + copyPixes
结论: copyPixes > scroll + copyPixes 耗时差距1/15 - 1/20 相差不大
2.地图滚动 之 BitmapData alpha 对性能影响
结论:无alpha > 有alpha 差距 30% 以上 机器越差 性能差距越大
注1:将无alpha的位图 放置于sprite 上 对sprite 操作相当于渲染有无alpha的位图
3.unlock 测试
unlock(Rectangle) 解锁区域 比 unlock 全部耗时 稍少
bitmapData.unlock() 即使位图没有任何更新也会渲染全部
4.displayObject.filters = [] 即使没有使用任何滤镜 任何变化 此代码也会渲染对象
顾 需要 .filters = null 不会渲染
5.关于bitmap.visible = false
位图设置不可见以后不会渲染 即使置换bitmapData也不会
6.关于 ColorTransform 滤镜 置换的测试
类似于
private var _ct:ColorTransform = new ColorTransform();
dis.transform.colorTransform = _ct
每帧设置Transfor 或滤镜 即使为同一对象 也会进行再渲染
7.关于bitmap + 滤镜 移动 消耗测试
对bitmap 一开始 加滤镜 每帧移动 则消耗 只有移动消耗 无滤镜消耗
如果每帧都置换bitmapData 则消耗 有 滤镜消耗
8.关于scrollRect测试
如果对对象使用滤镜 再每帧使用scrollRect 则每帧都有滤镜消耗
如果只移动x y 则没有滤镜消耗
9.关于 removeChild addChild + 滤镜测试
对象一开始使用滤镜 不停 removeChild addChild 则消耗有滤镜消耗
补
10.TextField即使没有被addChild 或 visible = false 文字改变也会因为更新文本布局消耗少量时间
约8字符 0.2ms 文字较多并由滤镜的情况 可以达到 1ms
11.关于 TextField cacheAsBitmap
文本在加了滤镜以后自动 cacheAsBitmap 以位图方式渲染,即使TextField 移动也依旧为位图 性能消耗很小
如果TextField 未加滤镜 且cacheAsBitmap = false 则文字移动消耗较大性能
持续更新
相关文章推荐
- 关于BitmapData画图方法效率的测试和对比
- 关于dubbo的一些性能测试参考文档
- 关于使用性能测试工具的一些想法和问题
- 关于List接口中ArrayList,LinkedList和Vector的取值方法的一些性能测试
- [性能测试]关于性能测试的一些建议
- 关于性能测试中一些计算方法(throughput, active user...)
- 关于测试工具以及前端性能测试的一些思考
- 关于性能测试平台的一些想法
- 关于dubbo的一些性能测试参考文档
- 关于性能测试应该知道的一些事(转载)
- 关于性能测试的一些个人小结
- 关于侯垒的自增字段和GUID字段性能对比文章的一些自己的分析(没有测试,纯粹分析)
- 关于做web前端性能测试一些原则的心得分享
- 关于性能测试的讨论!
- 自己测试的关于 document.all.checkbox 的一些BUG
- 关于在Java程序当中创建对象等基本操作的性能测试
- 性能测试项目的一些经验之谈
- 关于测试环境的一些想法
- 在项目中使用Hibernate进行大数据量的性能测试,有一些总结
- 关于字符串为空的几个性能测试