11

我想可视化一些科学数据,目前只是一些不同颜色和大小的球体的动画。

我已经在 Mathematica 中创建了一个为 POV-Ray 创建输入的脚本。

我的问题是,我对 POV-Ray 的结果质量不满意,想编写一个 Python 脚本,它可以设置相应的搅拌机场景并渲染它们。一个重要的限制是,我想在无头机器上渲染,所以我不能使用 Blender 的内部控制台。

我的问题:是否可以从外部控制台使用 Blender 的 API 来获得类似 POV-Ray 的行为?


阅读 George Profenza 的回答后,我做了进一步的研究,发现不要使用 Blender!在 Blender 的文档中。

与我的想法相反,必须创建一个由blender在后台模式下执行的python脚本。

./blender --background --python myscript.py
4

3 回答 3

7

据我所知,您可以在不打开界面/窗口系统的情况下从命令行运行 Blender,我希望这对您的设置有用。您不仅可以告诉 Blender 渲染一个文档,还可以运行一个脚本来生成该文档/使用几何图形、灯光等填充场景。

或者,您可以直接为渲染器生成内容(并完全跳过 3D 编辑器/搅拌器)。那里有很多免费的渲染器,例如:

  1. 亚法瑞
  2. 向日葵
  3. 三叶
  4. 力士渲染
  5. 小精灵

亚法瑞

雅法瑞

向日葵

向日葵

勒克斯渲染 勒克斯

小精灵

小精灵

于 2013-02-28T13:51:33.883 回答
5

有两种选择,

  • 您遇到的第一个是在后台模式下运行 Blender,
  • 第二个是非常实验性的,使用 Blender 作为 python 模块 - BlenderAsPyModule

在这两种情况下,这应该是导入 Mathematica 场景的简单操作 - bpy.ops.import_scene.* 然后渲染场景bpy.ops.render.render

于 2013-02-28T17:02:03.320 回答
0

Blender 可以在 Docker 容器内“无头”运行。在此处检查 Dockerfile

如果您不熟悉 Docker,请下载 Dockerfile 并运行:

docker build -t blender .
docker run -it -v your_folder/:/scripts bash

现在您可以在无头 Blender 中运行您的脚本

于 2020-06-12T05:44:24.640 回答