回覆列表
-
1 # i網路心連心
-
2 # 人工智慧崔老師
首先,像我們經常玩的遊戲一般都是由很多種程式語言來開發的,和普通的軟體開發是一個道理。目前開發遊戲經常使用的語言主要有c++、c#、c、java語言等等,是因為現在的遊戲開發領域已經趨於成熟了,所以只能選擇相對成熟的方案;
其次,python也能開發遊戲,但都是一些網頁端的小遊戲,但隨著遊戲行業逐漸的成熟,以python為主的遊戲引擎越來越少,離著目前主流的開發技術越走越遠,所以透過python語言來開發遊戲也就慢慢就被邊緣化了。現在我們用python來做遊戲最大的目的就是提高學習python的學習興趣,然後利用python來做其它方面的事情,比如人工智慧,學習AI相關的技術大部分都是採用的python加上TensorFlow來完成的,這才是python語言的優勢所在!
最後,我們可以總結出來,為什麼python語言現在不適合開發遊戲,它的優勢在於資料探勘、人工智慧等相關領域。所以,再開發遊戲之初就要跟上 目前的主流技術。
-
3 # AA蘇西老師
python 是可以做遊戲開發的,python可以和任何一門語言完美融合在一起開發遊戲,
建議你可以去百戰這個網站詳細問下
-
4 # 迷人的呆子
用解釋型語言寫有幾個問題:
原始碼沒法保密了,所有的加密與收費手段基本都黃了,所以頂多拿來開發免費的小遊戲。沒有收益就沒有人願意投入,這是資本決定的。執行速度,解釋型語言就算最佳化的再厲害,還是要經過解釋這一步,所以與硬體的互動中間多了一道CPU的計算,而很多動態效果是要直接去顯示卡計算的,所以幀速很難上去,你會玩一卡一卡的遊戲嗎?這是客戶決定的,客戶用腳投票,我要玩流暢的遊戲,所以沒市場,落到後面資本家賺不到錢,所以依然不會選這個。解釋型語言的優勢是可移植性高,就是一段程式碼放到那都可以執行,但這點遊戲需要嗎?好像也需要的,這點可以節約出不少開發成本,但C好好像也可以的喔,雖然移值成本要高點。 -
5 # 視覺Hermit
主要大家都覺得python相比c++啊java啊的執行速度要慢,畢竟像C++可以編寫底層程式碼,可以按照你自己的要求編寫提高CPU和GPU的利用率,而且大型遊戲的3D渲染引擎都是C++寫的。除非你是研發大型遊戲專案使用不同的語言可能最後的結果很明顯,但是一般中小型遊戲應該沒那麼明顯的差距,畢竟現在硬體很強悍。
理解這個問題有兩個角度:
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很難成為首選方案。
而只要不是首選方案就很可能沒有出頭的機會,這兩個原因也算是相輔相成的。