与Python的3d游戏,从零开始

时间:2010-11-29 12:49:32

标签: c++ python 3d

所以我们想为学校编写一个3D游戏,我们可以将混合器用于3d模型,但是我们完全不知道如何在游戏/应用程序中使用它们。

是否有任何推荐的指南/文档,我们应该阅读一般的3D游戏编程和python特定的东西。

我们也可能考虑用C ++编程,但是现在我认为使用Python更容易,因为我们可以完全专注于那种3d机制。

8 个答案:

答案 0 :(得分:17)

Panda3D是一个很好的,功能强大的游戏引擎,允许在Python中编写脚本。这看起来是个好地方。

如果您寻求更低级别的内容,仍然会PyOpenGLpygame

答案 1 :(得分:14)

Pygame :Python语言的游戏框架。如果您需要了解游戏开发的基础知识(引擎,流程,用户界面,数学),这个框架及其所有示例都会对您有所帮助。这不会带你一步一步地引导你逐步完成游戏开发,但如果你需要一个参考和一个体面的框架,那么这是一个好的开始。

还有PyOpenGL :OpenGL编程的官方Python包装器。再次提供了大量的现场编程示例和大量关于如何使用3D模型等的代码片段。可以和PyGame一起使用。

但您应该通过熟悉一些3D基础知识来开始。环顾GameDev.net网站。学习一两件about matrices (and perhaps quaternions)。有许多beginners tutorials和参考资料可供您入门。

编辑:我差点忘了:还有Panda3D,它有丰富的Python脚本编写功能。也许这会提供更高水平的游戏开发。

答案 2 :(得分:5)

您实际上可以通过Python在Blender中开发游戏。有很多教程,我会让你四处寻找你喜欢的风格。

更多信息here

答案 3 :(得分:2)

如果您想编写3D游戏,您可能需要先了解编程和计算机科学的基础知识。从顶部开始学习一门语言,然后找到一个好的图形库,例如Panda,Pygame都是不错的选择,然后还有其他部分要考虑像扭曲的网络或物理引擎。考虑使用像虚幻引擎这样的工作引擎也可能是一个不错的选择,因为游戏设计师通常会将其包含在游戏机制而不是游戏本身中

答案 4 :(得分:2)

我个人更喜欢的PyGame的替代品是pyglet。 http://pyglet.org

答案 5 :(得分:1)

你应该知道3D游戏包含

  • 动画3D模型
  • 3D环境(包括NPC和对象)
  • 模拟环境与模型之间的相互作用(游戏逻辑和游戏机制)
  • 用户界面(开始,保存和游戏设置)

游戏逻辑和机制通常是最大和最复杂的部分,你应该首先尝试对抗它。

之后建模3D对象和环境应该会更容易。

答案 6 :(得分:0)

我将实现时间关键的东西作为3D及其对象处理+在原始C / C ++中渲染,并让嵌入式Python与外部模块处理游戏逻辑(对象移动,对象属性,脚本等)。 / p>

答案 7 :(得分:-2)

很容易编写简单的3D游戏。屏幕上任何对象的位置始终可以简单计算:

position = (x/z*fov,x/z*fov)

其中xz都是水平轴,fov是玩家的视野,以[弧度/度/像素/...].

旋转时,单词不是旋转的。这意味着你总是反对积极的z。 四元数是旋转周围世界的最佳方式。

聚苯乙烯。使用顶点阵列或数组来获得最快的3D图形