我目前正在使用适用于 Windows Phone 7 的 XNA Game Studio 4.0 框架编写 2D 游戏。如果用户想要保存/加载或恢复游戏,我已经到了解决游戏墓碑问题的阶段稍后的比赛。
我目前正在使用TiledLib库来渲染地图等,以及屏幕状态管理示例作为我的项目的基础(例如,用于墓碑的事件都已到位)。Map
TiledLib 库中的对象有一个多维数组 ( [,]
) 来存储每个TileLayer
. 我的地图只有一个TileLayer
,并且只有 1 个Texture2D
具有不同的Rectangle
源位置,具体取决于图块显示的内容。重要的是,我跟踪每个图块的所有适当源矩形,以便可以按照玩家离开的方式恢复已编辑的地图。
我在尝试找出实现游戏屏幕墓碑的最佳方式(或任何方式)时遇到了很多麻烦。我在序列化方面没有太多经验,这是我第一次尝试为 Windows Phone 7 应用程序建立墓碑。我知道非锯齿状数组无法使用通常的 XmlSerializer 进行序列化,有没有办法解决这个问题?自定义序列化程序是一个很好的路径吗?优点缺点?有没有其他人有使用 TileLib 和序列化游戏屏幕的经验?还是带有 X,Y 坐标的 2D 地图?多少数据是太多数据而无法序列化以进行墓碑化?
提前感谢您的回答和建议。