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

二、测试过程
测试程序控制红色小球在舞台中不停匀速移动,通过改变小球数量控制实际帧率在24帧/秒。
Fla默认帧率设置为25帧/秒,比较主流的游戏帧率,24帧可以认为已经达到处理瓶颈。
增减小球:
上(↑):增加10个小球,按住Shift键为100个
下(↓):删除10个小球,按住Shift键为100个
考虑到鼠标事件对影响性能,禁止了小球的鼠标事件
下面开始测试:
1、矢量图

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

3、位图无导出类

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

三、结果分析
以下是收集到的测试数据,手边没有收集CPU的工具,用的任务管理器,但误差不大
另外不同CPU在最终元件数量上可能有较大区别,整体比较应该差不多

从统计中可以看出Flash在不同图形式上的处理差异很大:
- Flash的矢量图渲染性能真的很差,不到纯位图的10%。有意思的是CPU使用没有限制有多少用多少,因为有其他程序在跑无法达到100%,此时的机器使用量已经在95%以上;
- “缓存为位图”选项,在性能提升上非常明显示,应该可以满足大部份情况下的性能要求,遗憾的是内存增加不少,这里没有收集内存了,有兴趣的可以跑起来观察下;
- 没有导出类的位图作为动画元素时,几乎不能带来性能提升,这个问题很严重,你有没有偷懒忘了给位图设置导出类呢?如果只是单一背景这个并不明显,有兴趣也可以试试;
- 有导出类的位图性能没得说了,稍有点遗憾的是swf文件会变大;
- 位图渲染时,CPU使用上限有明显的限制——仅能使用单核的比例。
测试程序下载:http://files.cnblogs.com/samen168/%E7%9F%A2%E9%87%8F%E5%9B%BE%E4%B8%8E%E4%BD%8D%E5%9B%BE.rar
Flash矢量图与位图性能对比的更多相关文章
- Flash 矢量图和位图性能对比 导出为位图/缓存为位图 export as bitmap / cache as bitmap
大家都知道Flash处理矢量图比位图要慢,而具体的性能上对比也有不少的前人已经做过.http://bbs.9ria.com/forum.php?mod=viewthread&tid=2282 ...
- 说明位图,矢量图,像素,分辨率,PPI,DPI?
说明位图,矢量图,像素,分辨率,PPI,DPI? 显示全部 关注者 28 被浏览 7,031 关注问题写回答 邀请回答 添加评论 分享 2 个回答 默认排序 刘凯 21 人赞同了 ...
- ps中的位图,矢量图,颜色模式
什么是位图?什么是矢量图? 位图是由像素组成的图像,在缩放和旋转的时候容易失真,同时文件容量较大 矢量图是根据几何特性来绘制的图形,通过数学公式计算获得的,不易制作色彩变化太多的图象 颜色模式 RGB ...
- SLAM+语音机器人DIY系列:(三)感知与大脑——5.机器人大脑嵌入式主板性能对比
摘要 在我的想象中机器人首先应该能自由的走来走去,然后应该能流利的与主人对话.朝着这个理想,我准备设计一个能自由行走,并且可以与人语音对话的机器人.实现的关键是让机器人能通过传感器感知周围环境,并通过 ...
- 颜色模式、DPI和PPI、位图和矢量图
颜色模式:用于显示和打印图像的颜色模型 RGB:电子设备的颜色 CMYF:印刷的颜色 印刷的图像分辨率大于等于120像素/厘米,300像素每英寸 图像分辨率单位为PPI(每英寸像素Pixel per ...
- Photoshop 基础七 位图 矢量图 栅格化
矢量图(CorelDraw)不是像素组成的,放大不会失真,体积小,颜色比较单一.由直线.曲线构成,画一些直线.曲线.多边形.图标. 位图(Photoshop画的就是位图),又像素组成,放大失真,放的越 ...
- Intel和AMD的CPU性能对比图
Intel和AMD的CPU性能对比图:
- VG.net矢量图和矢量动画开发平台拓扑图软件免费下载
VG.net拓扑图软件是一个基于.net平台的矢量图开发工具,可广泛应用于包括:电力.军工.煤炭.化工.科研.能源等各种监控软件.工作流设计器.电力.化工.煤炭.工控组态软件.仿真.地理信息系统.工作 ...
- [原] KVM 环境下MySQL性能对比
KVM 环境下MySQL性能对比 标签(空格分隔): Cloud2.0 [TOC] 测试目的 对比MySQL在物理机和KVM环境下性能情况 压测标准 压测遵循单一变量原则,所有的对比都是只改变一个变量 ...
随机推荐
- 自定义控件EditText
public class defineEditText extends EditText { Context context; Drawable d; public defineEditText(Co ...
- flex中通过sprite在地图上画柱状图主要代码
1.主要代码: var sprite:Sprite = new Sprite(); var columnSys:ColumnSymbol = new ColumnSymbol(); v ...
- Spring 4集成 Quartz2(转)
本文将演示如何通过 Spring 使用 Quartz Scheduler 进行任务调度.Spring 为简化 Quartz 的操作提供了相关支持类.本文示例使用的相关工具如下: Spring 4.2. ...
- Android_helloworld
看见 HelloWorld 相信你就明白我要干什么了.这是每个程序的第一步,让 HelloWorld 带我们走入 Android 的学习之旅吧. 前面我们下载了海马模拟器,所以接下来我们是在模拟器上进 ...
- codeforce div 377
#include <bits/stdc++.h> using namespace std; #define pb push_back #define lb lower_bound #def ...
- css3的一些新属性1
<body> /*文本阴影*/ <h1 style="text-shaow:5px 5px 5px #C0F">我爱你</h1> </bo ...
- Json在前台与后台之间的使用
一.将前台数据,使用ajax中的post.get传到后台 $.ajax({ type: 'post', url: 'your url', data: $("form").seri ...
- POJ 3180-The Cow Prom (图论-有向图强联通tarjan算法)
题目大意:有n个牛在一块, m条单项绳子, 有m个链接关系, 问有多少个团体内部任意两头牛可以相互可达 解题思路:有向图强连通分量模版图 代码如下: #include<stdio.h> # ...
- 2015年九月八日---js学习总结
参考书:javaScript Dom 编程的艺术 知识小结:一:js简史:前称ECMAScript 是一种脚本语言通常只能通过浏览器进行解释和执行. Dom(文档对象模型):是一套对文档的内容进行抽象 ...
- 使用 IntraWeb (42) - 测试读取 SqLite (一)
为通过 FireDAC(XE5开始支持的) 使用 SqLite, 现在已换成 XE6 + IntraWeb v14.0.32 Ultimate. 首先把官方提供的 C:\Users\Public\Do ...