Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 使用嵌入式图像代替动态加载的优缺点_Actionscript 3_Resources_Loading_Dynamic - Fatal编程技术网

Actionscript 3 使用嵌入式图像代替动态加载的优缺点

Actionscript 3 使用嵌入式图像代替动态加载的优缺点,actionscript-3,resources,loading,dynamic,Actionscript 3,Resources,Loading,Dynamic,我只是想知道使用嵌入式图像而不是动态加载的优缺点是什么?因为在纯AS3(没有Flash IDE)上制作游戏时,手动嵌入所需的所有资产是一件痛苦的事情。。。这使得您的代码很松散,此外,您无法控制自动更改hud,例如,仅通过更改外部文件 但我听说有些网站只允许你上传一个swf,所以你不能有外部图像。我还听说有些人担心用户下载他们的艺术作品。。。但据我所知,如果我错了,请纠正,如果他们用反编译器破解swf,他们也可以下载它们。将其置于外部,您可以对图像进行加密,并在代码中取消加密,因此如果他们尝试下载

我只是想知道使用嵌入式图像而不是动态加载的优缺点是什么?因为在纯AS3(没有Flash IDE)上制作游戏时,手动嵌入所需的所有资产是一件痛苦的事情。。。这使得您的代码很松散,此外,您无法控制自动更改hud,例如,仅通过更改外部文件

但我听说有些网站只允许你上传一个swf,所以你不能有外部图像。我还听说有些人担心用户下载他们的艺术作品。。。但据我所知,如果我错了,请纠正,如果他们用反编译器破解swf,他们也可以下载它们。将其置于外部,您可以对图像进行加密,并在代码中取消加密,因此如果他们尝试下载,则只能获得加密的代码


所以。。。你对嵌入图像有什么看法?请与我分享您的想法。

我相信动态加载图像是一种更好的方法。我同意你所说的游戏问题,但当你把flash/as3作为一个整体来谈论时,游戏只是众多游戏中的一个,你确实是这样做的。还有一些也可以接受多个文件&以后可能会允许更多。到目前为止,托管网站只是出于安全考虑,不允许使用多种文件和格式。所以,如果你真的有额外的文件,你可以把它们放在别处&从你的主swf调用它们

但是,我不同意通过动态管理图像来让代码变得松散的观点。当您通过IDE来编写代码时,IDE就是在为您编写代码,但是您可能意识到,让IDE来决定编写什么并不总是最好的。手动处理让您了解应用程序的所有入口和出口点。此外,您是否希望在每次希望添加图像、进行更新等时打开flash IDE

我通常喜欢使用IDE,因为它提供了一些很棒的工具来提高效率&我更喜欢让代码来做所有管理/控制的事情。是的,如果你有很多小图片(比如在线flash游戏),嵌入是更好的方法


就安全性而言,如果您使用的加密算法可以通过反编译swf找到,则即使是外部加载的文件也可以访问。因此,在安全方面,你最好的选择通常是使用第三方软件对swf进行加密,这样可以增加防止材料被盗的机会。因此,如果您真的使用第三方工具加密swf,这两种方法都是可以接受的。

我相信这两种方法都是有效的,主要取决于您的资产

正如你所知道的,嵌入资产会增加你的SWF的大小,我只会考虑图标大小的图像,这几乎不成问题。p>


对于更大的图像,我肯定会选择动态加载,我也发现动态加载更灵活。

如果我有很多小图标,我会嵌入它们。想象一下运行时的请求数量,其中任何一个都可能超时。植入的痛苦,在哪里?资源的源或CSS中的单个嵌入标记。“固定”资产必须嵌入,“可变”资产必须加载


编辑:好的,我知道了。嵌入大量资产的痛苦。我想到了一个主意。。。即使动态加载某些内容,也需要包含所有文件名的列表?您可以获取文件列表并生成一个包含
public static const
成员和
[Embed]
属性的类,这相当简单。然后在project中使用该类,瞧,一切都准备就绪。也许这会有帮助。

你说得对,灵活是个词。谢谢分享你的想法。当你有很多资产的时候,痛苦就来了。谢谢分享你的想法。这确实对我很有帮助,现在我有了更好的方法来处理这件事。。在加密部分你是绝对正确的,今天他们可以解密一切。谢谢分享你的想法。