遊戲配置和XNA
回答
既然你提到,你可能想移植到XBOX,我建議使用一個名爲EasyStorage庫。這是很多人在做簡單的閱讀/寫作時使用的。
它有讓玩家選擇自己的存儲設備(如果有一個以上的話),並與東西,如玩家試圖挽救之前移除存儲設備交易等,這會給你一個流,以節省/負荷,所以大部分實際的保存/加載代碼都是相同的。
不幸的是,這並不是我一直在尋找的東西,但是如果我真的會爲xbox進行部署,這是不錯的選擇。現在我使用了xml,因爲默認庫中沒有專門用於該任務的東西:) – NewProger
我想提出一個更簡單的答案。我假設這些配置更改僅用於在開發過程中進行測試嗎?那麼,爲什麼不能簡單地與您設置的靜態類:
public static class Debugging
{
public static bool ShowFPS = true;
public static bool PlaySound = false;
}
這樣,您就不必寫任何代碼從磁盤讀取的值。所有你需要做的就是像if (Debugging.ShowFPS)
。除了設置靜態字段(Debugging.ShowFPS = false;
)之外,您也不必編寫任何代碼來更改運行時的值。
想想看,如果你保存你的價值觀,譬如說,一個XML文件,您的工作流程將是:
- 打開文件
- 變化值
- 按F5運行的遊戲改變後的值
工作流程完全一樣,增加的好處是你不必編寫任何代碼來處理讀寫操作。它也適用於所有支持的平臺上絕對沒有變化。如果你想成爲100%確保您不要忘記釋放之前更改設置,你可以使用一個簡單的ifdef用正確的價值觀生產:
public static class Debugging
{
#if DEBUG
public static bool ShowFPS = true;
public static bool PlaySound = true;
#else
public static bool ShowFPS = false;
public static bool PlaySound = false;
#endif
}
有時候,最好的答案是最簡單的;-)
感謝您的回覆,但是沒有...這些設置必須保存到磁盤並在啓動時讀取。所以程序可以記住例如是否在全屏等等。 – NewProger
- 1. XNA遊戲組件
- 2. XNA遊戲性能
- 3. 鼠標XNA遊戲
- 4. XNA遊戲凍結
- 5. XNA遊戲教程
- 6. C#XNA無遊戲網絡遊戲
- 7. 非XNA遊戲進入遊戲?
- 8. 使用帶有XNA(Windows)遊戲項目的XNA(Windows)遊戲庫
- 9. 並行運行Winform和XNA遊戲
- 10. 本地多人遊戲XNA
- 11. XNA遊戲嵌入網站
- 12. 在XNA遊戲中progressBar
- 13. 確定XNA遊戲滯後
- 14. XNA遊戲狀態管理
- 15. XNA遊戲分發問題
- 16. FlatRedBall XNA遊戲引擎
- 17. XNA for WP7遊戲:DrawUserIndexedPrimitives
- 18. C#XNA槳球遊戲
- 19. XNA Windows遊戲(4.0)ContentLoadException
- 20. XNA遊戲開發kickstart
- 21. XNA連續平臺遊戲
- 22. XNA 2D遊戲狀態,重新啓動遊戲
- 23. 發佈XNA遊戲內容作爲遊戲內容參考
- 24. Xna遊戲開發 - 遊戲背景問題
- 25. 用XNA遊戲工作室在2D遊戲按鍵拍攝
- 26. 遊戲遊戲和繼承
- 27. 在Android遊戲中配置不當的Google Play遊戲服務
- 28. Flash設置和Android遊戲
- 29. XNA 2d街機遊戲精靈按照
- 30. XNA遊戲無法在VMWare中運行
如果你想讀**和**寫(在運行時),最簡單的方法是使用「默認的C#XML啄」。查找讀/寫XML。這真的不錯。 –
可能是這可以幫助你 http://gamedev.stackexchange.com/questions/11306/configuration-management-in-xna –
呀,讀,寫。但是,xbox呢?我想潛在地也能夠將這個遊戲移植到Xbox。在xbox上運行遊戲時,是否可以讀取/寫入xml? – NewProger