Python PyGame做3d游戏吗?

Python PyGame做3d游戏吗?,python,3d,pygame,Python,3d,Pygame,我似乎到处都找不到这个问题的答案。我知道你必须使用PyOpenGL或类似的东西来做OpenGL的东西,但我想知道是否有可能在没有任何其他依赖项的情况下制作非常基本的3D图形。不,Pygame是SDL的包装器,SDL是一个2D api。Pygame不提供任何3D功能,可能永远也不会提供 Python的3D库包括和,尽管它们的使用可能相当复杂,尤其是后者。不,Pygame是SDL的包装器,SDL是一个2D api。Pygame不提供任何3D功能,可能永远也不会提供 Python的3D库包括和,尽管它

我似乎到处都找不到这个问题的答案。我知道你必须使用PyOpenGL或类似的东西来做OpenGL的东西,但我想知道是否有可能在没有任何其他依赖项的情况下制作非常基本的3D图形。

不,Pygame是SDL的包装器,SDL是一个2D api。Pygame不提供任何3D功能,可能永远也不会提供


Python的3D库包括和,尽管它们的使用可能相当复杂,尤其是后者。

不,Pygame是SDL的包装器,SDL是一个2D api。Pygame不提供任何3D功能,可能永远也不会提供


Python的3D库包括和,尽管它们的使用可能相当复杂,尤其是后者。

好吧,如果你能做2d,你总是可以做3D。所有3d实际上都是倾斜的二维表面,给人的印象是你在看有深度的东西。真正的问题是它能做得好吗,你会愿意吗。浏览pyGame文档一段时间后,它看起来只是一个SDL包装器。SDL不适用于3d编程,所以真正问题的答案是,不,我甚至不会尝试。

好吧,如果你能做2d,你总是可以做3d。所有3d实际上都是倾斜的二维表面,给人的印象是你在看有深度的东西。真正的问题是它能做得好吗,你会愿意吗。浏览pyGame文档一段时间后,它看起来只是一个SDL包装器。SDL不适用于3d编程,所以真正问题的答案是,不,我甚至不会尝试。

Python Soya可以在pygame表面上渲染3d图形。

Python Soya可以在pygame表面上渲染3d图形。

您可以仅使用pygame进行伪3d游戏(如“末日”):

如果你浏览pygame.org网站,你可能会发现更多用python和pygame完成的“3d”游戏


然而,如果你真的想进入3d编程领域,你应该研究OpenGl、Blender或任何其他真正的3d库。

你只能用pygame做伪3d游戏(如“末日”):

如果你浏览pygame.org网站,你可能会发现更多用python和pygame完成的“3d”游戏


然而,如果你真的想进入3d编程,你应该看看OpenGl,Blender或任何其他真正的3d库。

如果你想要3d投影功能和所有这些东西,你必须使用3d API,但如果你想做一个基本的3d外观,我推荐Peter的网站教程:

如果你想要3d投影功能和所有这些东西,你必须使用3d API,但如果你想做一个基本的3d外观,我推荐Peter的网站教程:

Pygame最初并不打算制作3d,但有一种方法可以使用任何2d图形库制作3d。您所需要的只是以下函数,该函数将三维点转换为二维点,允许您通过在屏幕上绘制线来生成任何三维形状

def convert_to_2d(point=[0,0,0]):
    return [point[0]*(point[2]*.3),point[1]*(point[2]*.3)]

这被称为伪3d,或2.5d。这是可以做到的,但速度可能很慢,而且非常难做到,因此建议您使用一个用于3d的库。

Pygame最初从未打算做3d,但有一种方法可以使用任何2d图形库来做3d。您所需要的只是以下函数,该函数将三维点转换为二维点,允许您通过在屏幕上绘制线来生成任何三维形状

def convert_to_2d(point=[0,0,0]):
    return [point[0]*(point[2]*.3),point[1]*(point[2]*.3)]

这被称为伪3d,或2.5d。这是可以做到的,但速度可能很慢,而且非常难做到,因此建议您使用3d库。

为PyGame制作3d驱动程序很容易。PyGame拥有一些用于3D游戏开发的资产。
我现在正在使用PyGame开发Py3D驱动程序。当我完成时,我将向您显示下载Py3D的链接。我试着用PyGame制作3D游戏,我只需要PyGame的一个小插件。你认为必须使用SDL、PyOpenGL、OpenGL、PyQt5、Tkinter是错误的。他们制作3D游戏都是错误的。OpenGL和PyOpenGL或Panda3D非常难学。我在那些车手身上玩的所有游戏都很糟糕。PyQt5和Tkinter不是制作游戏的驱动程序,但它们有插件。不要试图对那些车手耍花招。我们需要使用数学模块的所有驱动程序都很难。你可以很容易地为他们制作小插件,我想每个人都可以在1-2周内为PyGame制作驱动程序。

为PyGame制作3D驱动程序很容易。PyGame拥有一些用于3D游戏开发的资产。
我现在正在使用PyGame开发Py3D驱动程序。当我完成时,我将向您显示下载Py3D的链接。我试着用PyGame制作3D游戏,我只需要PyGame的一个小插件。你认为必须使用SDL、PyOpenGL、OpenGL、PyQt5、Tkinter是错误的。他们制作3D游戏都是错误的。OpenGL和PyOpenGL或Panda3D非常难学。我在那些车手身上玩的所有游戏都很糟糕。PyQt5和Tkinter不是制作游戏的驱动程序,但它们有插件。不要试图对那些车手耍花招。我们需要使用数学模块的所有驱动程序都很难。你可以很容易地为他们制作小插件,我想每个人都可以在1-2周内为PyGame制作驱动程序。

你所看到的3D实际上是2D游戏。毕竟,你在看你的屏幕,通常是2D的。虚拟世界(3D)投影到一个平面上,然后显示在屏幕上。然后我们的大脑将2D图像转换成3D图像(就像他们对我们眼睛的图像所做的那样),使其看起来像3D图像

所以制作3D游戏相对容易:你只需使用多维矩阵创建一个虚拟世界,然后将每个循环投影到2D平面上,并显示在屏幕上


你可以在3D程序(使用pygame)中使用的一个教程是。

你所看到的3D实际上是2D游戏。毕竟,你在看你的屏幕,通常是2D的。虚拟世界(3D)投影到一个平面上,然后显示在屏幕上。然后我们的大脑将2D图像转换成3D图像(如