3

使用 XNA 4.0,我尝试通过以下方式为不同的游戏屏幕创建多个内容管理器:

ContentManager myManager = new ContentManager(Content.ServiceProvider, Content.RootDirectory);

Content 是系统为我提供的原始 ContentManager。

然而,它并没有像我预期的那样成功。如果我调用 myManager.Unload() ,那么使用原始 ContentManager 加载的所有内容也会被卸载。就好像两人拥有相同的数据一样。

我怎样才能将它们分开并使卸载一个管理器不会影响另一个管理器?

4

1 回答 1

4

您发布的代码没有任何问题。我个人使用Game.Services- 但Content.ServiceProvider也很好 - 它们都指向完全相同的对象

该错误必须在您的代码中的其他位置。您确定在每种情况下都使用正确的内容管理器吗?

您是否尝试过在调试器中单步执行您的代码?并利用“制作对象 ID”功能?(在监视变量或鼠标悬停的变量的上下文菜单中。)

于 2013-02-10T09:18:55.350 回答