0
我在我的遊戲世界中有一些區域,用於根據區域的可見性和與用戶的接近度對可渲染區域進行分區。如何防止在XNA Game Studios(設計)中加載紋理的副本
爲簡單起見,同樣如此。
class Zone
{
Textur2D _texture;
public Zone(...)
{
_texture = Content.Load<Texture2D>("Textures\\a");
}
}
當前,此結構具有_texture作爲Zone類的成員。現在,如果我需要渲染20個區域。我將不得不加載20個可能是相同紋理的副本。
從我的角度來看,這似乎是非常低效的記憶智慧。
我查看了MSDN和網上的ContentManager(稱爲Content above)類,看起來它具有Unload()功能。讓我相信它是紋理數據的集中來源,這意味着我假設的20個區域中的所有加載的紋理都指向相同的參考紋理,並且在我調用Unload()時將全部處理。
這是這種情況?或者我應該實現一個ContentCache來加載所有這些紋理,並讓我的區域指向它們共享的集中加載紋理?
非常好!這節省了我大量的時間!非常感謝你! – 2014-11-20 20:56:14