我正在將第一人稱射擊遊戲作爲一個有趣的副項目,並開始考慮營銷遊戲,並添加對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. 我應該使用什麼2D遊戲引擎?
- 10. 磚塊遊戲的JavaScript遊戲引擎
- 11. 我應該在依賴項中添加recyclerView和CardView嗎?
- 12. Unity遊戲引擎教程?
- 13. iOS遊戲引擎選擇
- 14. 針對.NET的策略遊戲引擎的推薦?
- 15. Android NDK遊戲引擎
- 16. Monodroid C#2D遊戲引擎爲我的遊戲?
- 17. 遊戲是否應該只依賴幀速率?
- 18. Android和IOS遊戲引擎
- 19. 使用PHP進行腳本編寫的遊戲引擎?
- 20. 遊戲事件腳本引擎 - 不同的方法?
- 21. python攪拌機遊戲引擎事件
- 22. 我應該爲我的遊戲構建一個物理引擎,還是使用已有的物理引擎
- 23. 如何添加腳本依賴到gradle?
- 24. 3ds Max渲染紋理與我的遊戲引擎不同嗎?
- 25. Windows Phone 7遊戲引擎?
- 26. C++ 3D遊戲引擎
- 27. 添加將遊戲對象左右移動的腳本
- 28. 哪裏應該破壞邏輯遊戲引擎或角色類
- 29. 3D遊戲引擎的建議
- 30. 爲遊戲引擎製作API或腳本語言?
什麼是遊戲本身寫入?另外,你仍然可以優化LUA,尤其是當使用C接口(假設你的主應用程序是用C/C++編寫的) – 2012-07-26 18:18:53
我正在用C++/DirectX/HLSL編寫引擎。 – IDWMaster 2012-07-26 18:19:32