Python编程语言可以用来做大型网络游戏吗?

把你还给我426


小智认为可以,但是要看什么游戏、游戏开发中哪个方面,pygame可以做些小游戏,但大型网络游戏,在编程语言上大多用C/C++;还有在设计方面有用python编码来设计高大上的效果。但一般的用3Dmax就差不多了;还有,游戏开发中可能需要一些脚本可以用python来写。

Python用于大型游戏,分四种情况:

  1. 客户端,引擎和基本框架层面,毫无希望。
  2. 客户端,逻辑层,Python没问题、很擅长,但性能方面不是Lua的对手。
  3. 服务器,框架层,特别适用于某些交互不频繁的游戏类型;用在MMO-RPG等类型上有性能问题,但不是不可以。
  4. 服务器,逻辑层,没问题。

PS:所有的运维工具、项目周边工具、工具链胶水层等等,Python来了其他技术都可以靠边站。

以上就是小智为带来的介绍,更多精彩内容请关注欢迎大家来“小智wan游戏”评论吧!


小智wan游戏


请高兴能回答你的问题!

大型网络游戏一般也是会分为前后端,后端的话基本上所有开发语言都可以进行实现,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苏木


如果使用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以外的地方也进行一些工作。


分享到:


相關文章: