我想用Python开发一个非常简单的2D游戏.Pygame是Python中最受欢迎的游戏开发库,但我已经非常熟悉wxPython并且使用起来很舒服.我甚至在其中写了一个俄罗斯方块克隆,它非常流畅.
我想知道,Pygame在图形方面提供了什么(暂时放弃声音)wxPython不能做什么?在Pygame中制作图形比在wxPython中更简单/更快吗?它是否更加跨平台?
看起来我在这里遗漏了一些东西,但我不知道是什么.
好吧,从理论上讲,没有什么可以用Pygame做的,你不能用wxPython.重点不在于如何.在我看来,用PyGame编写游戏更容易:
它更快.Pygame基于SDL,这是一个专门为游戏设计的C库,它的开发考虑了速度.当你开发游戏时,你需要速度.
它是一个游戏库,而不是通用画布,它具有对精灵,转换,输入处理,绘图,碰撞检测有用的类和函数.它还实现了常用于游戏的算法和技术,如脏矩形,页面翻转等.
有成千上万的游戏和例子.您将更容易发现如何做任何技巧.
有许多库可以重用您的效果和实用程序.你想要一个等距游戏,有一个库,你想要一个物理引擎,还有一个库,你有什么很酷的视觉效果,还有一个库.
PyWeek.:)这是为了让您的游戏开发更有趣!
对于一些非常简单的游戏,如俄罗斯方块,差异不会太大,但如果你想开发一个相当复杂的游戏,相信我,你会想要像PyGame这样的东西.
wxPython基于wxWidgets,这是一个面向GUI的工具包.它具有使用其运行的系统提供的样式和装饰的优点,因此很容易编写便携式应用程序,可以很好地集成到您正在运行的任何外观中.你想要一个复选框吗?使用wxCheckBox和wxPython将处理外观和交互.
另一方面,pyGame面向游戏开发,因此以wxPython不能(并且不需要,因为它调用OS来绘制大部分控件)的方式使您更接近硬件.pyGame有很多与游戏相关的东西,比如碰撞检测,表面和图层的细粒度控制,或者在你选择的时候翻转显示缓冲区.
也就是说,在图形方面,你可以随时找到一种方法,用两种工具包做你想做的事.然而,当速度很重要或者你希望以图形方式实现比俄罗斯方块更加夸张的游戏创意时,你可能会更好地使用pyGame.如果你想使用大量的GUI元素并且不需要花哨的图形和声音功能,那么你最好使用wxPython.
便携性不是问题.两者都可用于三巨头(Linux,OSX,Windows).
这真的是你需要什么样的特殊功能的问题.