我正在开发的游戏从 Content 子项目的文件夹中加载所有纹理,并将它们存储在Texture2D[]
.
由于我无法弄清楚的原因,XNA 的 ContentManager(内容)似乎永远不会卸载这些纹理。所以即使我从文件夹中删除它们,它们仍然存储在管道中。
这是我的内容文件夹:
这是调试中 ContentManager 的加载资产。
正如您从红色元素轮廓中看到的那样,这些纹理已从 Content 文件夹中删除,但它们仍保留在 ContentManager 缓存中。这意味着当我从“TileSets”文件夹中加载所有纹理时,本应删除的纹理也会被加载。
我已经尝试过Content.Dispose()
并且Content.Unload()
主要UnloadContent()
但那些并不能解决问题。还要确保从我的外部文件夹资源管理器中的文件夹中删除了纹理,甚至检查了 ContentPipeline.xml;那里没有引用纹理。
这是怎么回事?我错过了什么吗?