Python 基于pygame的引擎

Python 基于pygame的引擎,python,pygame,Python,Pygame,我目前正在为pygame编写一个RTS,并在pygame的基础上为一些常见的东西编写了一些模块,例如有效的碰撞检测、状态系统和更多特色的精灵。现在,在编写游戏时,除了Rect和Surface,我几乎没有编写任何对Pygame本身的调用 在谷歌上搜索时,我并没有发现任何东西能够真正取代pygame的大部分游戏设计。所以,我想知道是否有其他人使用过任何基于pygame的引擎,并且发现它很好用。我还计划将游戏和引擎作为开源发布,所以我想知道其他人做了多少,以及我应该做什么或集成到我的引擎中。好吧,Py

我目前正在为pygame编写一个RTS,并在pygame的基础上为一些常见的东西编写了一些模块,例如有效的碰撞检测、状态系统和更多特色的精灵。现在,在编写游戏时,除了Rect和Surface,我几乎没有编写任何对Pygame本身的调用


在谷歌上搜索时,我并没有发现任何东西能够真正取代pygame的大部分游戏设计。所以,我想知道是否有其他人使用过任何基于pygame的引擎,并且发现它很好用。我还计划将游戏和引擎作为开源发布,所以我想知道其他人做了多少,以及我应该做什么或集成到我的引擎中。

好吧,Pygame本身本质上是SDL调用的Python包装器。我认为本质上你只是在包装

您可以随时构建自己的适配器API,但Pygame的API有什么特别的地方您非常不喜欢,以至于需要将其与代码分离

我认为您的通用方法,如自定义碰撞检测,可以分离到自己的引擎模块中,本质上将其与游戏代码的其余部分分离,但本质上您只是使用这种方法在Pygame之上分层,而不是包装它

编辑:
既然问题已经改变了,就作为后续行动。简短的回答,不,我对任何一个都不熟悉。你可能想看看,那些人似乎很有知识。只要确保你能在这里找到答案就可以了

长话短说,可能是Pygame(处理对SDL的调用)和游戏代码本身之间的“引擎”空间太小,任何人都无法为其编写通用库。本质上不同类型的游戏有不同的引擎需求,所有游戏类型共享的引擎的通用部分似乎都包含在Pygame本身中


如果您已经在Pygame中编写了一个RTS游戏,那么您当然可以将RTS引擎与您的游戏逻辑分离,它可能会通过分离关注点来帮助您的总体设计。此外,可能值得发布该引擎部件,以便其他想要在Pygame中编写RTS的人可以从中受益。

我认为您可能误用了包装器这个术语。你真的是在说一个在Pygame上分层的游戏引擎吗?我想你是对的,我是说一个在Pygame上分层的游戏引擎而不是包装器。我现在将对问题进行编辑。