游戲編程的語言,Python真的不適合游戲開發嗎?
感謝邀請!
Python是否適合開發游戲?
理解這個問題有兩個角度:
1、任何語言都可以開發游戲,任何方便好用的語言都可以快速開發游戲。Python很好用,沒理由不能開發游戲。
2、現代游戲開發,不能從畫像素點、畫三角形做起,絕大多數情況下都要借助于游戲引擎和編輯器。而流行的游戲引擎非常有限,它們采用的編程語言自然也就被限制在那幾種。
從兩個角度分析,就可以得出基本結論:理論上Python完全可以開發游戲,甚至還非常好用;但是實踐中很難拿它開發游戲,因為缺乏必要的工具和基礎設施。
1、編程語言和引擎、技術方案有綁定關系
游戲引擎限定了技術方案,具體點說:
Unity和C#UE4和C++,藍圖可以間接寄生在其它技術中的LuaH5游戲領域流行的JavaScript和TypeScript。一套技術會形成一套生態,生態本身很難發生大的改變,主要是因為缺乏改變的必要。這是人類社會常見的現象。不僅是技術領域如此,其它領域也是一樣:比如,抖音用戶超級多,但是用電腦觀看抖音的需求很少。
2、現代游戲開發并不排斥解釋型語言
現代游戲開發中,以Lua為代表的解釋型語言大行其道。國產手機游戲特別重視“熱更新”功能。所謂熱更新,就是用戶不需要重新下載安裝游戲,就能在游戲內升級版本。
為了做到代碼熱更新,很多公司都采用Lua編寫大部分游戲邏輯代碼。(也有Lua以外的其它技術)。
雖然解釋型語言有著運行效率較低等弊端,但至少從大體上看,Lua能做的,Python也能做。Lua效率比Python高一些,但還是屬于量的差異而不是質的差異。不少網絡游戲服務器端就采用了Python。
3、Python很難做游戲開發的原因
最主要的原因還是沒有技術土壤。被主流單機游戲開發排除在外的不止是Python,而是除了C++、Lua、C#以外的幾乎所有語言~~~ 并不是針對Python。
次要原因是Python本身的特點。Python在執行效率、多線程、內存管理方面確實存在一些瑕疵,而這些瑕疵是高性能游戲客戶端很介意的,所以Python很難成為首選方案。
而只要不是首選方案就很可能沒有出頭的機會,這兩個原因也算是相輔相成的。
街機游戲用的什么游戲引擎和編程語言?
都是 PC,裝的是 Windows Embedded老的街機就是自研基板了,一般是 C 或者匯編,機能是強過同時代家用機的,畢竟可以宰街機廳老板啊……
騰訊游戲是用什么語言編寫的?
大多數是使用C++寫的,追求速度和性能嘛。不管是手機端還是服務器段,絕大多數都是C++,可能有極個別部門使用其他的語言,比如JAVA等的。
以上就是關于游戲編程的語言和Python真的不適合游戲開發嗎的相關問題解答,希望對你有所幫助。