我正在將第一人稱射擊遊戲作爲一個有趣的副項目,並開始考慮營銷遊戲,並添加對modding的腳本支持。我想知道是否應該使用傳統的腳本語言,如LUA,Javascript或Python,或者如果我應該使用C#/ .NET。 C#被稱爲是一種「更快」的語言,因爲它是編譯的,而上面提到的語言則不是。 (我也可以在Java等其他框架上添加依賴項)。這個遊戲是爲Windows編寫的,我想知道如果期望最終用戶安裝.NET框架是否「太多」,或者這是一個合理的要求。
我想補充一點,使用Microsoft.CSharp.CSharpCodeProvider接口,可以在遊戲中完成編譯C#代碼(就像LUA,Python和JavaScript一樣)。遊戲引擎 - 我應該添加對.NET腳本的依賴嗎?
回答
如果您想使用.NET,假設最終用戶已經安裝了相當新的版本是非常安全的。 Windows Vista隨附了.NET 3.0; Windows 7附帶了.NET 3.5。當然,還有一些最近流行的遊戲(Magicka,Terraria,Bastion等)完全用.NET編寫,所以遊戲社區已經證明他們並不特別反對安裝/使用它。將它添加到遊戲的安裝程序應該是相當不顯眼的。請記住,這是一個與Windows平臺綁定的更多事情,所以如果您將來決定將遊戲移植到其他操作系統,那麼您將不得不提供一個替代品(或看看莫諾是否足夠滿足您的需求)。
謝謝!我打算現在就把它保留在Windows上,並且將來也沒有計劃將它移植到其他平臺上。引擎的一大塊也使用DirectX ---所以我幾乎堅持在Windows上反正。 – IDWMaster 2012-07-27 18:17:50
這真的取決於你的情況細節,但是,期望用戶安裝.NET(至少.NET 2.0)絕對不會太多。大多數XP用戶已經安裝了.NET,因爲他們可能需要它來做其他事情,或者它是由Windows Update自動安裝的。而Windows 7默認使用.NET。
我是IronPython的粉絲,並將其用於我的所有腳本驅動的項目。首先,因爲我喜歡語言(用於腳本,而不是用於應用程序開發),其次,因爲使用IronPython,您可以直接訪問和使用.NET對象,而不會有任何奇怪的語法(與需要混合語法的.NET的Lua不同)。嵌入到您的應用中也很簡單。
- 1. 團結,我應該附加什麼對象我的遊戲引擎腳本
- 2. 我應該將我的代碼稱爲遊戲引擎嗎?
- 3. Unity遊戲引擎:獲取動態添加腳本的參考
- 4. Android開發新手。我應該使用遊戲引擎嗎?
- 5. 使用python腳本的遊戲引擎?
- 6. Java腳本中的遊戲。我應該使用畫布嗎?
- 7. HTML5/JS--一款不依賴Canvas的優秀遊戲引擎?
- 8. Android 2D遊戲:我應該使用框架佈局還是遊戲引擎?
- 9. Rails引擎依賴於另一個引擎,在哪裏添加依賴關係
- 10. Html5遊戲引擎
- 11. 我應該使用遊戲引擎爲Android
- 12. 我應該使用什麼2D遊戲引擎?
- 13. 我應該使用哪個遊戲引擎
- 14. 磚塊遊戲的JavaScript遊戲引擎
- 15. 我應該在依賴項中添加recyclerView和CardView嗎?
- 16. Unity遊戲引擎教程?
- 17. AndEngine是一款遊戲引擎嗎?
- 18. 針對.NET的策略遊戲引擎的推薦?
- 19. iOS遊戲引擎選擇
- 20. Android NDK遊戲引擎
- 21. Monodroid C#2D遊戲引擎爲我的遊戲?
- 22. 我應該依賴會話嗎?
- 23. OS X遊戲引擎
- 24. 遊戲是否應該只依賴幀速率?
- 25. 遊戲事件腳本引擎 - 不同的方法?
- 26. 使用PHP進行腳本編寫的遊戲引擎?
- 27. 2D遊戲引擎如何組織遊戲對象?
- 28. python攪拌機遊戲引擎事件
- 29. 我應該爲我的遊戲構建一個物理引擎,還是使用已有的物理引擎
- 30. 我應該添加多個索引嗎?
什麼是遊戲本身寫入?另外,你仍然可以優化LUA,尤其是當使用C接口(假設你的主應用程序是用C/C++編寫的) – 2012-07-26 18:18:53
我正在用C++/DirectX/HLSL編寫引擎。 – IDWMaster 2012-07-26 18:19:32