如何处理AS3网页游戏的资源? (嵌入式/加载程序)

| 问一个问题.. Flash游戏的图像资源,我应该如何加载?我使用Loader类,但有些人使用嵌入式资源。您能告诉我哪种情况下使用\“ Loader \”类,哪种情况下使用\“ [Embed] \”吗?     
已邀请:
使用embed标签实际上会将资源编译为最终的SWF输出。因此,这取决于您要执行多少预加载以及您希望初始swf有多大。如果要嵌入一些小的缩略图图像或声音文件,则在某种程度上可能是可以的。但是,如果您将所有资产或大型资产嵌入其中,那么您可以从那里找出来,那么您将把该文件大小+任何其他文件的大小合并为1个文件,这也意味着您将成为用户接口。将资产保持在外部(大部分情况下)并动态加载它们。在某些其他情况下,可能需要某些特定情况(如此处其他答案所述),除非另有要求,否则请整理资产并根据需要简单地加载/卸载它们。使用Loader类的另一个好处是,与其他任何东西相比,它使您可以更好地控制从内存中销毁对象。您可以调用unloadAndStop(Boolean CallGarbageCollector)方法,并直接请求VM强制停止,删除和清理该对象。无论如何希望这能使事情澄清。     
这完全取决于游戏要求。您必须记住,如果您使用加载程序,则您的游戏将无法在离线模式(无法访问互联网)下运行,这在某些情况下至关重要(例如,用于移动设备的Flash游戏)。 如果最终文件的大小没有问题,那么您应该始终嵌入资产并仅加载动态资源(即广告)。您始终可以使用资产库来存储资源并减少应用程序的初始加载时间。     
如果您将游戏提交给Kongregate或Newgrounds,则它们具有严格的规则-游戏应包含一个文件。如果您自己托管游戏,则可以按照自己的意愿进行,但是要考虑到加载需要时间,并且游戏会发现需要一些资源并且尚未加载。 根据经验,如果您的游戏很小,请嵌入所有内容。如果资源巨大且无法同时使用,请考虑动态加载-难度更大,但可以加快游戏启动速度。     

要回复问题请先登录注册