Flash高级技巧:mc长时间绘制多消耗资源的解决

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

在涂鸦程序中,一个mc内绘制大量的图形会严重的消耗cpu资源,当绘制10秒时候已经出现大的延迟了,要解决这个问题,就需要在一定时间后再建一个mc,在这个mc内绘制图形,这个可以适当的减轻cpu资源的消耗.

下面的测试程序的代码,在测试的时候打开任务管理器,安下鼠标连续的长时间绘制,可以看到任务管理器中cpu的使用情况.

//----------------

count = 0;

mcs = [];

_root.onMouseDown = function() {

if (_root._ymouse>335) {

return;

}

_root.draw = true;

_root.drawmc = _root.createEmptyMovieClip("a"+++count, count);

_root.drawmc.moveTo(_root._xmouse, _root._ymouse);

mcs.push(_root.drawmc);

t = getTimer();

};

var t;

_root.onMouseMove = function() {

if (_root.draw) {

if (getTimer()-t>3000) {

_root.onMouseDown();

trace("new mc...");

}

_root.drawmc.lineStyle(2, 0, 100);

//

if (_root._ymouse>335) {

ymouse = 335;

} else {

ymouse = _root._ymouse;

}

_root.drawmc.lineTo(_root._xmouse, ymouse);

}

};

_root.onMouseUp = function() {

_root.draw = false;

};

clear.onRelease = function() {

trace(mcs);

for (var i in mcs) {

mcs[i].removeMovieClip();

}

mcs = [];

count = 1;

};

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航