在内存压缩c#中的对象?

时间:2015-08-23 19:27:26

标签: c# dictionary compression

所以我在c#中自学成为一个名为BlackBox for stardive1的游戏模式。

这是一款x86构建的xna 3.1游戏。如果没有进行大规模的改革,我就无法改变这种状况。

游戏在游戏后期遇到内存问题。

它在运行时加载了大量资源并将它们存储在字典中。

我想知道在字典对象或字典中的值的内存压缩中是否会有一种相对简单的方法。

创建船舶时,它会复制字典中的数据并创建新对象。我希望我可以压缩字典并在需要时解压缩值。性能损失可能值得节省额外的内存

1 个答案:

答案 0 :(得分:1)

我认为压缩不会有所帮助。相反,您应该确保每个资源仅在必要时加载,并且只加载一次。

例如,如果你有3个盒子,并且每个盒子使用相同的600 mb纹理,那么如果只加载一个纹理对象实例,那么它将比你加载三次时少1200 MB。

如果距离一个物体足够远,你应该删除那个纹理并加载其他物体越近的物体。