Python編程語言可以用來做大型網絡遊戲嗎?

把你還給我426


請高興能回答你的問題!

大型網絡遊戲一般也是會分為前後端,後端的話基本上所有開發語言都可以進行實現,Python也不例外。很多輕遊戲(頁遊,手遊)的服務端都是Python進行實現的。

所以Python做大型遊戲的服務器端,是沒有任何問題的。


遊戲的前端實現大部分都是由C++來進行的,更底層,對客戶機的硬件利用率會更高。

Python本身不是為遊戲所進行開發的對於大量的圖形特效,需要用很多顯卡底層的功能,python在這方面是不行的,而且性能也跟不上。


所以市場上游戲前端大部分不會招Python崗的,當然國外也有一些遊戲是用Python實現的,有些玩家自制的遊戲Python 也不少。


不同的語言適用在不同的場景,希望我的回答能對你有所幫助!


明哥讀世界


這個問題可以重遊戲開發必須具備的幾個方面來回答:

客戶端:邏輯層,Python沒問題、很擅長,但性能方面不是Lua的對手,但是開發效率是其他語言不能比的

服務端:Python屬於跨平臺腳本語言。因此很多代碼可以服務端客戶端共用,尤其是數據結構定義,序列化等。用過的才知道前後端用同一種語言有多方便。同一套 Excel 配表,用 Python 寫的工具轉成 py 文件,然後服務端和客戶端都用這個。同一個類,服務端用,客戶端也用,還需要啥數據格式轉換啊,而且對於框架層,python特別適用於某些交互不頻繁的遊戲類型;用在MMO-RPG等類型上有性能問題,但不是不可以。

效率問題:運行效率大部分情況下都不是問題,開發效率卻可以提升幾個數量級。

多線程:遊戲項目從來都不是計算密集型的,邏輯本來就夠複雜了,多線程會進一步增加複雜度,得不償失

Hotfix:網絡遊戲正在逐漸成為一種服務,成為每個人的日常娛樂方式。服務的穩定也變得越來越重要,如果隔三差五就得停服修bug,客戶端動不動就得整包更新,會嚴重影響玩家體驗。而用 Python 進行熱更是語言原生支持的,意味著實現成本很低,風險低,操作也很方便。

而且python開發的遊戲有

EVE

Civilization IV

Battlefield 2


企業信息化民工


答案肯定是可以的,目前知道的文明,EVE(大型星際飛行沙盒遊戲,就是那個新手入門兩年半那個),還有比較火的豬場的一些遊戲都是Python寫的,

Python有哪些優勢呢?

首先我們說Python最擅長的運維層面的東西(市面上多數外掛都是Python寫的),所有的運維工具、項目周邊工具、工具鏈膠水層等等,個人感覺Python算很相當適合的了,本身就號稱膠水語言(狗頭保命,人身苦短,我用Python)

項目組甚至不需要分出人力去維護引擎部分,因為引擎本身比較穩。

然後是服務端:也是純 Python。

因此很多代碼可以服務端客戶端共用,尤其是數據結構定義,序列化等。

效率問題:

運行效率大部分情況下都不是問題,開發效率卻可以提升幾個數量級。

多線程:客戶端邏輯沒有必要。

遊戲項目從來都不是計算密集型的,邏輯本來就夠複雜了,多線程會進一步增加複雜度

最後,Python 進行熱更是語言原生支持的,意味著實現成本很低,風險低,操作也很方便。



PM蘇木


小智認為可以,但是要看什麼遊戲、遊戲開發中哪個方面,pygame可以做些小遊戲,但大型網絡遊戲,在編程語言上大多用C/C++;還有在設計方面有用python編碼來設計高大上的效果。但一般的用3Dmax就差不多了;還有,遊戲開發中可能需要一些腳本可以用python來寫。

Python用於大型遊戲,分四種情況:

  1. 客戶端,引擎和基本框架層面,毫無希望。
  2. 客戶端,邏輯層,Python沒問題、很擅長,但性能方面不是Lua的對手。
  3. 服務器,框架層,特別適用於某些交互不頻繁的遊戲類型;用在MMO-RPG等類型上有性能問題,但不是不可以。
  4. 服務器,邏輯層,沒問題。

PS:所有的運維工具、項目周邊工具、工具鏈膠水層等等,Python來了其他技術都可以靠邊站。

以上就是小智為帶來的介紹,更多精彩內容請關注歡迎大家來“小智wan遊戲”評論吧!


小智wan遊戲


如果使用python做大型遊戲的服務器端,是沒有什麼問題的。

但是如果是客戶端,由於涉及大量的圖形特效、多線程等,需要用很多顯卡底層的功能,python在這方面是不行的,而且性能也跟不上。

python還是無法逃離它的膠水語言的命運。底層支持做好了,將業務邏輯抽離出來用python來實現和修改,是有效率上的天生優勢的。做基礎開發還是放棄這個想法吧。


多學酷思


可以的,不過現在的遊戲,很少有單一語言開發的,從兩個方向來看。

客戶端:

用c或者cxx來寫渲染部分,用Python來寫業務邏輯,也就是腳本語言只寫具體的遊戲邏輯,如果邏輯非常吃計算量,把這部分用c來寫就好了。

服務端:

純Python沒問題的,因為本來用的網絡庫就是c寫的,性能沒問題,但是如果想更好把控,就用c來寫網絡,定時器部分,再用Python寫遊戲邏輯。


海嘯雲遊戲工作室


小智認為可以,但是要看什麼遊戲、遊戲開發中哪個方面,pygame可以做些小遊戲,但大型網絡遊戲,在編程語言上大多用C/C++;還有在設計方面有用python編碼來設計高大上的效果。但一般的用3Dmax就差不多了;還有,遊戲開發中可能需要一些腳本可以用python來寫。Python用於大型遊戲,分四種情況:客戶端,引擎和基本框架層面,毫無希望。客戶端,邏輯層,Python沒問題、很擅長,但性能方面不是Lua的對手。服務器,框架層,特別適用於某些交互不頻繁的遊戲類型;用在MMO-RPG等類型上有性能問題,但不是不可以。服務器,邏輯層,沒問題。PS:所有的運維工具、項目周邊工具、工具鏈膠水層等等,Python來了其他技術都可以靠邊站。以上就是小智為帶來的介紹,更多精彩內容請關注歡迎大家來“小智wan遊戲”評論吧!


哥不收破爛


小遊戲應該可以,大型遊戲還是需要c語言等


我願幫你戴雷鋒帽


任何編程語言都可以寫大型遊戲,主要看使用者


鱈廡佷


可以用來開發遊戲的後端,客戶端方面目前存在的方案可能不足夠,還是需要開發者自己去進行大量的開發工作,甚至需要在python以外的地方也進行一些工作。


分享到:


相關文章: