通过使用带有巨大内部图像库(超过 300 多个小 png 文件)的 flash cs5,我需要每个编译操作超过 90 秒! as 代码非常好,我的电脑也是如此(四核,4gigs 的 ram)。我发现,通过将文件导出到“阶段 1”(我的屏幕截图中的 bild 1),Flash 开始徘徊,但我不知道为什么......
.
如何加快这个过程?
________________________________________________________________________________________________________________________________
________________________________________________________________________________________________________________________________
我的解决方案无效:
所以我试过并最终为每个位图创建了 *.as 文件,但速度结果是相同的(可能比以前快 10% - 15%)...
package
{
import flash.display.*;
dynamic public class MY_BITMAP_NAME extends BitmapData
{
public function MY_BITMAP_NAME(width:int = 500, height:int = 135)
{
super(width, height);
return;
}
}
}
我的工作速度不够快,无法调试我的项目文件:-(
最佳答案
解决方案是将您的 Assets 移动到一个预编译的 SWC 库中,您只会在它们发生变化时重新编译。
构建库:
- 创建一个新的 FLA 并移入您的位图中,
- 每张图片需要有一个链接类名,并在第一帧导出;您不必创建 AS 类,Flash 会生成它们,
- 在发布设置的“Flash”选项卡中,选中“导出 SWC”,
- 此 SWC 库将在与 SWF 相同的位置发布;在 CS4-5 中,您无法阻止 SWF 创建。
使用库
- 在主 FLA 发布设置的“Flash”选项卡中,打开 Advanced Actionscript 3 设置对话框,
- 在“库路径”选项卡中,您可以添加资源库 SWC;确保“链接类型”是“合并到代码中”,
- SWC 内容将在您的主 FLA 中可用,就像它们在库中一样。
值得注意的是:
- 您必须通过代码(即新的 AssetName)实例化这些 Assets :它们不会出现在您的主 FLA 库面板中,您不能将它们放在时间轴上,
- 只有您在代码中明确引用的 Assets 才会在运行时可用;如果您使用的是 getDefinitionByName(),您仍然必须在代码中的某处导入 Assets 。例如,您可以声明一个包含所有 Assets 类别的数组(例如:var assets:Array = [AssetClass1, AssetClass2,...])。
关于actionscript-3 - 闪存 CS5 : compiling fla with huge internal library takes YEARS !,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5102306/