Unity-独立版本内存不足

时间:2016-07-04 19:12:54

标签: memory optimization unity3d memory-leaks out-of-memory

所以我已经在团结论坛上问了这个问题,但这对我没什么帮助:/。今天我决定尝试与朋友一起玩游戏,所以基本上我创建了一个服务器,以便其他客户/朋友可以连接到它。大约20分钟后,我的游戏崩溃了,我很快检查了任务管理器,我的游戏使用了大约3.5 GB的RAM! PHOTO HERE当我查看日志时,它说的是这样的:

Unity Player [version: Unity 4.6.1f1_d1db7a1b5196]

mono.dll caused an Access Violation (0xc0000005)
  in module mono.dll at 0023:101071a1.

Error occurred at 2016-07-04_163050.
C:\Users\Cooler Master\Desktop\TL\TL.exe, run by Cooler Master.
77% memory in use.
0 MB physical memory [1814 MB free].
0 MB paging file [1039 MB free].
0 MB user address space [68 MB free].
Write to location 00000000 caused an access violation.

所以在我的游戏中有一些东西一直在吃我的RAM。当游戏运行时,它每秒需要大约3MB的内存。我在互联网上找到了一些关于Resources.UnloadUnusedAssets的信息,但我不知道如何写这样的脚本!我知道如何用c#编写,但只有像GUI,Newtorkinf,Physics等简单的脚本。我也从kickasstorrent下载了unity pro,只是为了查看profiler窗口,但这根本没有帮助我

非常感谢您的回复! 此外,如果您想查看游戏并查看正在发生的事情:http://gamejolt.com/games/thuglifealpha/61660

再次感谢! :)

1 个答案:

答案 0 :(得分:0)

如果没有看到您的代码,很难找到确切的问题。但是我应该从找到新对象被实例化/销毁的代码开始。它会导致GC收集未使用的对象并分配新内存。很快你的空闲内存变得如此碎片化,以至于没有合适的内存区域来分配新对象。

我强烈建议您阅读有关Unity优化的文章