我在 FlashDevelop 中设置了一个 x 平台 AIR 项目。相同的代码库可以发布到 iOS 或 android 目标。我正在使用 Adobe 的纹理格式 (ATF) 压缩纹理图集,目前我将所有压缩文件嵌入到每个 atf 容器文件中(因此它包括桌面、iOS 和 android GPU 芯片组的纹理)
我的问题是我们的应用程序包含许多纹理图集,显然我们希望将下载量保持在最低限度,所以我想分别压缩不同的目标(即会有一个 atf 文件,它只对 iOS 进行 pvrtc 压缩,并且另一个只包含 android 的 etc1 压缩)并且只包含每个平台的兼容文件。
然而,这个问题与 ATF 或压缩无关 - 我已经完成了所有工作。
我想知道的是:有没有在编译时只包含必要(目标兼容)文件的解决方案?
我目前正在使用嵌入元数据来包含 .atf 文件,并且我认为元数据不能在编译时动态修改(即根据哪个目标将嵌入源从 xxx_ios.atf 切换到 xxx_android.atf选择)
我想可能还有其他解决方案,即在运行时使用加载器,并且只在编译时使用 adt 编译器中的参数包含适当的资产文件夹,但这并不理想 - 一个可以在编译时嵌入文件列表的简单开关我认为会更好/更优雅,特别是如果我可以使它纯粹是动态的,因此它由项目的目标配置/包含,而不必手动切换导入语句。
关于实现这一目标的最佳方法的任何想法?
谢谢