我知道这个问题可能是徒劳的,但它只是出于好奇心,而且我仍然是一个新手。不管怎么说,我喜欢python已经有一段时间了。我的问题很明显是速度问题。我想从事独立游戏的创作,在短期内,2d和pygame将会发挥作用。
但我最终想要进入3d领域,python真的太慢了,无法制作任何3d和专业的东西。所以我想知道是否曾经有工作创建一种能够导入和使用c库的高级语言?我看过Genie,它似乎能够使用某些库,但我不确定在多大程度上。我可以将它用于openGL编程,或者在c游戏引擎中使用吗?
我确实知道一些lisp,并且非常喜欢它,但是没有太多的库可以用来支持它。这就导致了一个问题:我不能忍受C的语法,但是C有很多我需要的库!以及像irrlicht这样的游戏引擎。在C语言中,有没有可以用来代替C的语言呢?
非常感谢,伙计们
发布于 2010-06-07 14:47:09
Python可以使用ctypes模块调用动态加载的C库( unix中的.so,Windows中的.dll )中的函数。
还有cython -- python的一个变种,可以编译成C语言,可以直接调用C库。您可以混合使用纯Python和cython编写的模块。
您可能还希望查看专门为Python编写的numerous 3D game engines或使用python接口编写的python。我听说(但没有用过)最多的是Blender和Python-Ogre。
发布于 2010-06-07 14:50:32
Panda3D是一个使用Python作为其“游戏逻辑”接口的引擎。基本上一切都是用Python语言编写的,Panda3D后端(我假设它主要是用C或C++编写的)负责渲染。
使用Panda3D的Check out the gallery of projects。它不会是AAA级的下一个战争装备级别的图形,但它仍然是相当令人印象深刻的。
发布于 2010-06-07 15:21:09
使用swig,你可以用不同的语言导入C: lua,python,php,c# ...
有关支持的包装器的更多信息,请参阅here。
https://stackoverflow.com/questions/2987524
复制相似问题