XNAs Content.Load如何加载<;纹理2d>;手术?

XNAs Content.Load如何加载<;纹理2d>;手术?,xna,textures,texture2d,Xna,Textures,Texture2d,我只是好奇它是否真的在每次调用时都将资产加载到内存中,或者它是否查找它,发现它是否已加载,如果未加载,它将加载一次并保留引用,所以第二次调用它时只会获取对它的引用?它跟踪已加载的内容,如果以前加载过同一对象,则只返回对该对象的引用(这是每个ContentManager)。这适用于所有内容,而不仅仅是纹理 结果是,只要您需要一些内容,就可以调用Load,而不必考虑重复。另一个结果是,永远不要处理从ContentManager加载的内容(改用ContentManager.Unload) 如果你想知道

我只是好奇它是否真的在每次调用时都将资产加载到内存中,或者它是否查找它,发现它是否已加载,如果未加载,它将加载一次并保留引用,所以第二次调用它时只会获取对它的引用?

它跟踪已加载的内容,如果以前加载过同一对象,则只返回对该对象的引用(这是每个ContentManager)。这适用于所有内容,而不仅仅是纹理

结果是,只要您需要一些内容,就可以调用
Load
,而不必考虑重复。另一个结果是,永远不要
处理从ContentManager加载的内容(改用
ContentManager.Unload


如果你想知道更多细节,.

啊,谢谢,这就是我希望得到的答案。我曾经使用我自己的内容管理器,它以这种方式工作,所以我认为XNA也是如此。然后我惊慌失措,因为我意识到这只是一个假设,我不知道它是否保留了引用,或者是否加载了重复的资产。。