可以使用Python编程创建Blender文件(.blend)吗?
我知道Python是Blender内部使用的标准脚本语言,但我没有找到用Python创建.blend文件的方法。
我想做的不是在Blender里面用Python,而是想在Python里面“使用Blender(库?)”。
我计划的工作流程是这样的:
- 先定义一些模型的参数;
- 定义一个“生成配方”,用来创建合适的Blender对象,并保存到文件;
- 写一个Python脚本来存储这些参数和步骤。运行这个脚本时,会在同一个文件夹里创建一个.blend文件;
- 用Blender来可视化这个模型。如果需要修改模型,就改脚本,再运行一次,然后重新打开它。
2 个回答
12
有一个实验性的选项,可以让你把自己的Blender版本做成一个Python模块,这样就可以像使用普通的Python模块一样使用它。这个页面提供了你能找到的所有帮助信息。
我建议你把Python脚本写成Blender脚本,这样可以在Blender内部运行。你可以使用 bpy.ops.wm.save_as_mainfile(filepath="path/to/myfilename")
来自动保存文件。
你可以在Blender里运行一个脚本,这个脚本会生成一个Blender文本块,然后你可以把它当作Python脚本来运行,选择全部内容,删除,然后再运行一次。如果你喜欢外部文本编辑器的功能,也可以很方便地把外部文件重新加载为Blender中的文本块。
你还可以根据你的计划自己生成脚本,然后用 blender -b -P myscript.py
在Blender中运行。这里的 -b
选项是告诉Blender在后台运行,不显示图形界面。
9
你可以从任何应用程序(比如C++、Python程序,甚至命令行)启动一个新的Blender进程,并告诉这个新进程去运行一个脚本文件(这个脚本是用Python写的)。这个脚本会生成你的模型,然后可以把新场景保存到一个blend
文件里。
要启动一个新的Blender进程并强制它执行一个脚本,可以使用以下命令:
blender.exe --background --python "c:\path to\script.py"