我正在开发一款益智游戏,游戏引擎拥有复杂的对象层次结构,从游戏角色到矢量到过渡动画。根据游戏状态,它们可能会从10增加到1000(在极端情况下)。我一直在推迟这一刻,直到我必须努力保存和装载所有这些混乱,因为我没有这方面的经验,但现在我担心的那一刻即将到来。

为此使用NSKeyedArchiver是个好主意吗?它的概念似乎很强大。这样我可以重建对象状态,但这包括保存对象之间的指针吗?它在性能方面表现如何?系统是否有时间在应用程序终止时将所有这些对象保存在磁盘上?

有帮助吗?

解决方案 2

我去了NSKeyedArchiver,它确实维护对象之间的引用。请参阅此处:存档相互关联对象的简便方法

其他提示

NSKeyedArchiver功能非常强大,但它不会让你保留对象之间的联系(除非你自己在归档后添加它们)。如果你可以/需要以原子方式存储你的整个数据集,那么NSKeyedArchiver可能就是这样,但是如果有任何比亲子关系更复杂的事情,你将会有一些“重新补充”。

我们有一个复杂的数据对象层次结构,我们将它们存储到SQLite数据库中,并在我们提取它们时重新连接它们。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top