我一直在编程一个地图编辑器,以便在制作2D游戏时使用。我几乎已经完成了,但是我无法加载地图。
我有多种保存和加载地图的选项。我有:
DAT文件
BIN文件
MAP文件
XML文件
XML不是问题,但其他文件类型是问题。我需要能够将图像数据读写到其他3种文件类型中。我建议删除这些文件类型,但有时使用非XML的映射是有用的。
更新:
我并不是要求遵循已经产生的算法。我的意思是将图像数据写入文件,然后将数据读回位图对象。
听起来你所说的是为游戏地图数据提供一种专有格式。
您想做的是查看对象关系映射(您可以从这里开始:http://en.wikipedia.org/wiki/Object-relational_mapping)。您希望找到一种在存储(二进制文件)中构造对象(映射图像)的好方法。你会想写一些类,遵循这种接口:
public interface ORMap
{
public void Save(MyMap map, string fileIdentifier);
}
听起来您已经为XML完成了这项工作。
您可以实现该接口来将MyMap对象转换和/或序列化为所需的格式,并使用fileIdentifier作为名称将其写入磁盘。
没有一种标准的方法可以做到这一点,但如果你有其他类似游戏的例子,你可以尝试查看它们的API和/或文件结构并模仿它