2012-12-23 61 views
2

我是從一個文件夾中的內容子項目所有紋理並將其存儲在一個Texture2D[]工作負載的遊戲。XNA內容不卸載可支配資產(的Texture2D)

對於我想不通原因,看來好像ContentManager(內容)的XNA從來沒有卸載這些紋理,永遠。所以即使我從文件夾中刪除它們,它們仍然存儲在管道中。

這裏是我的內容的文件夾:

enter image description here

這裏是ContentManager在調試loadedAssets。

enter image description here

你可以從要素看輪廓爲紅色,那些紋理已經從內容文件夾中刪除,但他們在ContentManager緩存堅持。這意味着當我加載「TileSets」文件夾中的所有紋理時,所有被刪除的紋理都會被加載。

我試過Content.Dispose()Content.Unload()在我的主UnloadContent()但這些不能解決問題。還確保紋理已從我的外部文件夾資源管理器中的文件夾中刪除,並且還檢查了ContentPipeline.xml;那裏沒有引用紋理。

這是怎麼回事?我錯過了什麼嗎?

+1

此外,如果有人認爲這將是更適合GameDev,我會高興地移到該處。我只是覺得這更像是一個編程問題。 – Djentleman

回答

3

顯然我錯過了.xnb文件,這些文件都存儲在~\bin\x86\Debug\Content

從中刪除文件後,一切都按預期。

+2

很高興你能弄明白自己:) – user1306322