2012-05-31 40 views
1

我只是想知道有什麼優點/ disadvatage是使用內容編譯器對不使用它的。XNA Contect,編譯或複製

我更喜歡不編譯文件,將它們複製到輸出目錄,然後使用其他函數而不是'XNA'Content.Load<>()函數加載它們。所以我想知道我的方式是否工作得很好,或者我應該回到使用'XNA'的方式。

當我加載的東西,我用其他的功能,如Texture2D.FromStream()

回答

2

除了其他答案之外,內容處理器還會將您的資產變成一個.xnb文件,該文件是一個較小的文件的二進制格式(因此用戶的遊戲下載速度更快,並且佔用了空間其硬潛水)並通過從content.Load <加載XNB文件>()方法,這將在遊戲加載更快。

+0

所以我可能會建立一些機構2種不同的負載類型之間進行切換?例如,在開發過程中,使用Texture2D.FromStream和實際的裝運遊戲使用ContentManager.Load <>? –

+0

「發展中」是什麼意思?我知道在開發遊戲時使用.FromStream沒有任何好處。也許如果開發一個特殊的使用工具或者什麼的,但我仍然想不出一個好例子。 –

+0

說,遞當您的「遊戲」或「引擎」,以完善的設計,讓他嘗試不同的資產,而無需預編譯它們,並具有安裝Visual Studio –

2

內容的編譯器,使您的內容跨平臺兼容的,也就是說,它會在兩個XBOX360和PC,甚至與MonoGame Mac的使用。

如果你的目標只是PC,你可以用.FromStream選擇堅守,但沒有這樣做,除了你的藝術家能夠交換資源而無需重新編譯增益。

+0

很好的回答。你如何彌補各種類型的內容缺少FromStream方法? (或做大部分類型的內容提供的這種方法嗎?) –

2

除了William的回答(這裏是useful link),ContentManager也會處理自動加載的所有資源。但是,如果您僅使用一個ContentManager,這不會產生差異(因爲您的資源將在遊戲終止時解除分配)。