我正在嘗試使用C#表單創建遊戲編輯器,並且在反序列化時遇到了問題;我無法在表單應用程序中使用內容管道,因爲我甚至沒有選擇向項目添加任何內容引用的選項。我如何使用我的表單應用程序的內容管道?是否有另一種方法來加載和反序列化我的XML內容?以C#形式使用XNA內容管道
回答
手動編輯.csproj的文件,並添加下面的第一PropertyGroup
部分包含的組件名稱,項目GUID等
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
你可能還需要添加
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
<XnaPlatform>Windows</XnaPlatform>
在VS中重新加載項目,你應該可以添加內容引用。
這裏指定的兩個GUID適用於Windows和XNA(Windows)。如果您需要根據項目進行重新定位,以下是some common project type guids(儘管有點過時)的列表。
看一看Winforms Series 2: Content Loading AppHub sample。
基本上你加載並調用適當的microsoft.xna.framework.content
類來讀取你編譯的xnb文件。
您可以使用microsoft.xna.framework.content.pipeline
內的命名空間中的類來創建xnb文件(這是內容項目爲您所做的)。
看到這裏的內容管道的概述:What is the Content Pipeline?
是否有另一種方式來加載和反序列化我的XML內容?
是的,使用任何你想要的序列化.net方法,也許XDocument
。
如果要在構建時處理所有內容,則winforms1樣本可能是更好的選擇。如果需要在運行時處理任何內容,那麼winforms2樣本就是要走的路。 – 2011-12-21 13:39:47
由於OP詢問是否向他的winforms項目添加了一個內容項目(這將構建資產),我去了第二個樣本。 – 2011-12-21 14:35:17
- 1. XNA內容管道教程
- 2. XNA內容管道和紋理
- 3. 使用XNA內容管道與SharpDX遊戲的Windows Phone 8
- 4. C#XNA 4.0動態內容
- 5. 從XNA內容管道擴展中訪問服務
- 6. xna發佈的項目沒有內容管道?
- 7. 從Adobe After Effects到XNA視頻的內容管道
- 8. 爲什麼要使用內容管道
- 9. 使用管道篩選HTTP JSON內容
- 10. 從多個管道讀取內容,C
- 11. XNA中的資源和內容管理
- 12. 從XNA 3到XNA的內容管理差異4
- 13. 管道文件內容conky?
- 14. Django:以管理員的形式定製內容
- 15. C#XNA Texture2D.SetData矩形?
- 16. 在C++中使用管道()的管道管道
- 17. BeatifulSoup以「•」的形式迴應內容
- 18. 使用IF內部FOR循環CMD中的管道內容
- 19. 內容的文件,以樹的形式使用python
- 20. 管道使用C++處理
- 21. 使用UNIX管道與C
- 22. 兩個asp:web內容形式的內容
- 23. 在Linux中使用管道C使用管道
- 24. 使軌道form_for兼容引導形式不使用寶石。
- 25. 使用C#和XNA
- 26. 編譯內容沒有XNA
- 27. 使用C ..(使用叉)實現管道(「|」)
- 28. 加載模型沒有內容管道
- 29. Monogame內容管道已停止工作
- 30. 直接發送內容到scrapy管道
非常感謝,這似乎工作;但是,反序列化時,我得到以下錯誤:「無法找到System.Int32 []的ContentTypeReader。」我假設我錯過了一個引用或名稱空間,但我不知道是什麼。有任何想法嗎? – Jamie 2011-12-21 21:21:19