我只是好奇它是否每次调用它时实际将资产加载到内存中,或者如果它查找它,发现它是否已加载,如果它没有加载,它会加载一次并只保留引用,所以第二次它叫它只是抓住它的引用?
答案 0 :(得分:2)
它跟踪已经加载的内容,并且如果之前已经加载了它,则只返回对同一对象的引用(这是per-ContentManager)。这适用于所有内容,而不仅仅是纹理。
结果是,只要您需要某些内容,就可以拨打Load
,而无需考虑重复。另一个结果是,您不应该从ContentManager加载Dispose
内容(而是使用ContentManager.Unload
)。
如果您想了解更多详情,请take a look at this question and answer。