我想想象一些科学数据,目前只是一些不同颜色和大小的球体的动画。
我已在Mathematica中创建了一个脚本,用于为POV-Ray创建输入。
我的问题是,我对POV-Ray结果的质量不满意,并且想编写一个Python脚本,可以设置相应的blender场景并渲染它们。一个重要的限制是,我想在无头机器上渲染,所以我不能使用Blender的内部控制台。
我的问题:是否可以从外部控制台使用Blender的api来获得类似POV-Ray的行为?
在阅读了George Profenza的回答后,我做了进一步的研究,并在Blender的文档中找到了Don’t Use Blender!。
与我的想法相反,必须创建一个python脚本,由blender在后台模式下执行。
./blender --background --python myscript.py
答案 0 :(得分:5)
据我所知,您可以从命令行运行Blender而无需打开界面/窗口系统,我希望这对您的设置有效。 您不仅可以告诉Blender渲染文档,还可以运行生成该文档的脚本/使用几何体,灯光等填充场景。
或者,您可以直接为渲染器生成内容(并完全跳过3D编辑器/ Blender)。那里有很多免费的渲染器,如:
答案 1 :(得分:5)
有两种选择,
在这两种情况下,这应该是导入Mathematica场景的简单操作 - bpy.ops.import_scene.* 然后渲染场景bpy.ops.render.render
答案 2 :(得分:0)
Blender可以在Docker容器内“无头”运行。检查Dockerfile here
如果您不熟悉Docker,请下载Dockerfile并运行:
select date_format(Feedback.DateTime, '%Y %m %d') from ctrData2.Feedback
现在您可以在无头Blender中运行脚本了