惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
IT之家
IT之家
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
V
Visual Studio Blog
云风的 BLOG
云风的 BLOG
MyScale Blog
MyScale Blog
阮一峰的网络日志
阮一峰的网络日志
Stack Overflow Blog
Stack Overflow Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
GbyAI
GbyAI
V
V2EX
N
Netflix TechBlog - Medium
Vercel News
Vercel News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
The Blog of Author Tim Ferriss
量子位
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 司徒正美
月光博客
月光博客
F
Fortinet All Blogs

博客园 - CC影子

Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization【转】 Source Multiplayer Networking【转】 点在平面上的投影【转】 求反射向量【转】 射线和三角形的相交检测(ray triangle intersection test)【转】 3D空间中射线与轴向包围盒AABB的交叉检测算法【转】 3D空间中射线与三角形的交叉检测算法【转】 射线与平面的相交检测(Ray-Plane intersection test)【转】 HLSL-高级着色语言简介【转】 点到平面的距离公式【转】 直线和平面的交点【转】 Cocos2d-三维拾取Ray-AABB碰撞检测算法【转】 向量投影【转】 空间点到直线的距离【转】 判断点是否在三角形内【转】 透视投影详解【转】 几何变换详解【转】 Flash(as3) 调整显示对象颜色 Stage3D显示透明贴图
Flash矢量图与位图性能对比
CC影子 · 2013-07-17 · via 博客园 - CC影子

Flash中使用位图的性能要高于矢量图,究竟有多大区别呢?数据有最好的说服力,开始测试:

一、机器配置

        

二、测试过程

测试程序控制红色小球在舞台中不停匀速移动,通过改变小球数量控制实际帧率在24帧/秒。

Fla默认帧率设置为25帧/秒,比较主流的游戏帧率,24帧可以认为已经达到处理瓶颈。

增减小球:

上(↑):增加10个小球,按住Shift键为100个

下(↓):删除10个小球,按住Shift键为100个

考虑到鼠标事件对影响性能,禁止了小球的鼠标事件

下面开始测试:

1、矢量图

 

2、使用“缓存为位图”选项

 

3、位图无导出类

 

4、位图有导出类(我管这叫“纯位图”)

 

三、结果分析

以下是收集到的测试数据,手边没有收集CPU的工具,用的任务管理器,但误差不大

另外不同CPU在最终元件数量上可能有较大区别,整体比较应该差不多

 

从统计中可以看出Flash在不同图形式上的处理差异很大:

  1. Flash的矢量图渲染性能真的很差,不到纯位图的10%。有意思的是CPU使用没有限制有多少用多少,因为有其他程序在跑无法达到100%,此时的机器使用量已经在95%以上;
  2. “缓存为位图”选项,在性能提升上非常明显示,应该可以满足大部份情况下的性能要求,遗憾的是内存增加不少,这里没有收集内存了,有兴趣的可以跑起来观察下;
  3. 没有导出类的位图作为动画元素时,几乎不能带来性能提升,这个问题很严重,你有没有偷懒忘了给位图设置导出类呢?如果只是单一背景这个并不明显,有兴趣也可以试试;
  4. 有导出类的位图性能没得说了,稍有点遗憾的是swf文件会变大;
  5. 位图渲染时,CPU使用上限有明显的限制——仅能使用单核的比例。

测试程序下载:https://files.cnblogs.com/samen168/%E7%9F%A2%E9%87%8F%E5%9B%BE%E4%B8%8E%E4%BD%8D%E5%9B%BE.rar