C++ 3d Python游戏,从无到有

C++ 3d Python游戏,从无到有,c++,python,3d,C++,Python,3d,因此,我们想为学校编写一个3d游戏,我们可能会使用blender制作3d模型,但是我们完全不知道如何在游戏/应用程序中使用它们 是否有任何推荐的指南/文档,我们应该阅读一般的3d游戏编程,也许还有python特定的东西 我们也可能考虑在C++中编程它,但现在我认为使用Python更容易,因为我们可以完全集中精力在3D机制上。 是一个不错的、强大的游戏引擎,允许在Python中编写脚本。这看起来是个好的开始 如果你想找一些更低级的东西,仍然会有或。你可以通过Python在Blender中开发游戏。

因此,我们想为学校编写一个3d游戏,我们可能会使用blender制作3d模型,但是我们完全不知道如何在游戏/应用程序中使用它们

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

我们也可能考虑在C++中编程它,但现在我认为使用Python更容易,因为我们可以完全集中精力在3D机制上。

是一个不错的、强大的游戏引擎,允许在Python中编写脚本。这看起来是个好的开始


如果你想找一些更低级的东西,仍然会有或。

你可以通过Python在Blender中开发游戏。这里有很多教程,我会让你搜索你喜欢的风格


更多信息

如果你想写一个3D游戏,你可能想从了解编程和计算机科学的基础知识开始。从顶部开始学习一种语言,然后找到一个好的图形库,例如熊猫,PyPoice都是不错的选择,然后还有其他部分需要考虑,比如用扭曲的网络或物理引擎。在游戏引擎中,游戏引擎设计者过于关注游戏引擎,而不是游戏本身

< P>,我会选择使用一个工作引擎,这是一个不错的选择。我将在游戏中实现时间关键的东西,如3D和它的对象处理+在原始C/C++中的渲染,让一个嵌入的Python与外部模块处理游戏逻辑。(对象移动、对象属性、脚本等)。

您应该知道3D游戏由

  • 三维动画模型
  • 3D环境(包括NPC和对象)
  • 模拟环境和模型之间的交互(游戏逻辑和游戏机制)
  • 用户界面(启动、保存和游戏设置)
游戏的逻辑和机制通常是最大和最复杂的部分,你应该试着先把你的头脑放在这上面

之后,对3D对象和环境进行建模应该会容易得多。

有:一个Python语言的游戏框架。如果您需要了解游戏开发的基础知识(引擎、流程、ui、数学),此框架及其所有示例将对您有很大帮助。这不会牵着您的手,引导您一步一步地完成游戏开发,但如果您需要一个参考和一个像样的框架,那么这是一个良好的开端

还有:OpenGL编程的官方Python包装。同样有大量的编程示例和大量关于如何使用3d模型等的代码片段。可与PyGame一起使用

但是你应该从熟悉一些3D基础知识开始。看看网站。了解一两件事。有很多参考资料可以帮助你开始


编辑:我差点忘了:Python还有很多脚本编写的可能性。也许这将提供更高级别的游戏开发。

我个人更喜欢PyGame的另一种选择是pyglet。

编写简单的3D游戏很容易。屏幕上任何物体的位置都可以简单地计算为:

position = (x/z*fov,x/z*fov)
其中,
x
z
都是水平轴,
fov
是玩家的视野,单位为[弧度/度/像素/…]

当你旋转的时候,这个词是旋转的,而不是你。这意味着你总是看着正z。 四元数是围绕你旋转世界的最佳方式


使用最新的3D图形

不使用所有的Python,但如果你想用C++来研究,我认为OGRE 3D非常常见。你会把这个方法作为初学者吗?听起来有点过于野心勃勃的OP给我。我正计划使用Python获得3D游戏编程的概念和工作,我一旦明白了,将它移植到C++(我已经计划做的事情)应该很微不足道。SGOLO:他最初是在C++中做这件事,我并不反对C++的C++方面,我建议嵌入一种脚本语言可能会让它在第一个3D游戏项目中有点远。我已经做了一些,我担心的是,如果你开始添加各种各样的铃声和口哨,那么你就不太可能完成游戏的编写……我非常高兴使用Panda3D,并强烈支持它与Python一起使用。对于3D,我不考虑PyPosiy。我更喜欢使用OpenGL在一个预先构建的游戏引擎上,因为我想尽可能多地学习这个项目,并建立我自己的一切。我还要看看教程,谢谢。如果他刚开始从事电子游戏行业,他肯定不知道什么是FOV。您能使用精确的变量名吗?