python - 什么是为(视觉上吸引人的)3D 物理模拟/可视化创建 python 程序的好库?

标签 python 3d visualization physics simulation

为(视觉上吸引人的)3D 物理模拟/可视化创建 Python 程序的好库是什么?

我看过 Vpython,但我看到的模拟看起来很丑,我希望它们在视觉上很吸引人。它看起来也像一个古老的图书馆。对于 3D 编程,我看到了使用 Panda3Dpython-ogre 的建议,但我不确定它是否真的适合精确模拟。此外,我更喜欢与其他库结合得很好的库(例如,pygame 与其他库结合得不太好)。

最佳答案

与其他语言相比,python 的 3D 支持相当弱,但由于大多数语言的构建方式,程序的外观比您想象的要多变得多。例如,您谈到了 Vpython,虽然他们的许多示例在视觉上并不吸引人,但它们中的大多数也来自以前的版本,最新版本包括挤压、 Material 和皮肤,这使您可以自定义外观比之前。

可能还值得注意的是,实时制作具有渲染质量的图像是不可能的(循环是朝这个方向迈出的一大步,但还远远不够)。我相信你的大部分问题是你正在寻找技术现在根本无法实现的东西,但是如果你愿意承担让你的模拟看起来具有视觉吸引力的负担,Vpython(这是一个经过精心设计的版本PyOpenGL) 可能是你最好的选择。以下是不同技术的总结,以防您正在寻找更通用的东西:

Blender:可用的最强大的 Python 图形程序,但是它是为图形设计和特效而制作的,虽然它下面运行着非常复杂的物理,但 Blender 不是为物理模拟而制作的。自包含。

Panda3D:经常与 Blender 进行比较的程序,但主要用于游戏。游戏引擎比 Blender 的更好用,但渲染质量要低得多,功能丰富性也是如此。独立

Ogre:一个在当时非常流行的游戏开发库,具有许多强大的功能,尤其是在创建游戏环境方面。事件处理也得到了很好的实现。可以与其他库集成,但有困难。

VPython:一个用于物理模拟的库,与其他方法相比,它去除了大量的纹理映射和渲染能力,但是这种能力仍然存在,因为 VPython 主要是从 OpenGL 构建的,OpenGL 是最通用的方法之一周围的图形库。因此,VPython 也很容易与其他库集成。

PyOpenGL:Python 的 OpenGL。 OpenGL 是使用最广泛的图形库之一,并且毫无疑问能够生成此列表中的一些最佳视觉效果(Blender 除外,它属于自己的一类),但要​​做到这一点并不容易. PyOpenGL 非常简陋,虽然有功能,但比其他任何东西都更难实现。非常愿意与其他图书馆合作,但前提是您知道自己在做什么。

关于python - 什么是为(视觉上吸引人的)3D 物理模拟/可视化创建 python 程序的好库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10489377/

相关文章:

Python 从对象本身更改对象引用

python - 地铁 python 和 linux

python - 使用 igraph 高效计算具有 23000000 个节点的图的最短路径数

plot - 如何使用 Racket 绘制 3 维图形

javascript - 从 3d solidworks 模型创建 2d 图像 Sprite

python - Seaborn:避免绘制缺失值(线图)

python - 如何重命名类似于数字的数据框列?

将射弹模拟转换为 3D 会导致绘图消失?

python - 在 python 中可视化数据

opengl - 如何可视化生成的 RNA 二级结构