AS3:如何在 AS3 类中有效地存储平铺地图编辑器的数据

Posted

技术标签:

【中文标题】AS3:如何在 AS3 类中有效地存储平铺地图编辑器的数据【英文标题】:AS3 : how can I store tiled map editor's data efficiently in an AS3 class 【发布时间】:2017-01-04 06:49:39 【问题描述】:

请让我详细描述我的问题。

假设我将创建一个包含 500 个不同地图的游戏。 这些地图中的每一个都包含 80x40 16 像素的图块。(不幸的是,有必要按 16 像素解析)

但在游戏中,我会为每 4 个 16px 的图块创建 32px 的图块。

我使用静态方法将每个嵌入的 tmx 文件存储在一个类中。

这是我的问题,我应该选择以下两个选项中的哪一个;

1- 每次玩家进入不同的地图时,我是否应该将 tmx 数据转换为 as3 数据(转换为包含图块数据的数组)。

2- 我应该在游戏开始时转换所有地图的数据,然后每当玩家进入不同的地图时,我直接获取数组并从中创建地图。

我问这个是因为我不确定保留 500 个大小为 80x40 的数组是否有问题。 (会不会太累了?)

【问题讨论】:

【参考方案1】:

选项1更好。你可以在进入地图之前加载地图配置数据,并且不需要将所有配置数据存储在内存中,你可以存储最近使用的10个地图配置数据(如LRU缓存算法) .

根据我的经验,如果您的地图配置数据是 xml,您可以将其传输到 byteArray 以减小其大小并在加载时解压缩。

【讨论】:

以上是关于AS3:如何在 AS3 类中有效地存储平铺地图编辑器的数据的主要内容,如果未能解决你的问题,请参考以下文章

在 AS3 中为游戏存储 XML 数据的最佳方式

As3 影片剪辑背景图像大小

开源游戏地图编辑器MarbleMap

as3 - 从 Assets 类中获取库符号

Flash AS3 中的本机 MC 标识符

AS3图像地图,圆,斜面过滤器