Blender - 从python脚本打开并解析.blend文件

时间:2015-10-31 03:13:31

标签: python blender

我想从python脚本中打开一个.blend文件并解析它(获取对象,动画和材质)。 到目前为止我已经阅读过关于如何从blender API(作为blender附加程序运行脚本)执行此操作的文档,但我想从命令行运行此脚本而不打开blender。

我感谢你能给予我的所有帮助。

2 个答案:

答案 0 :(得分:5)

我意识到我不需要打开二进制blender文件并解析它以使用这些对象。 Blender有自己的python安装,所以我把python脚本放在文件夹 path_to_blender / version / scripts / addons 中,我可以在命令行中执行它,如下所示:

blender.exe --background  --python ./version/scripts/addons/superScript.py

接下来,如果您想要从脚本中读取.blend文件,请将其放在background参数之后,如下所示:

 blender.exe --background myFile.blend --python ./version/scripts/addons/superScript.py

在python脚本中执行以下操作:

import bpy
import os
for ob in bpy.context.scene.objects:
    print("object name:  ", ob.data.name)

在这个例子中,我在.blend文件中打印场景中的所有对象

答案 1 :(得分:1)

正如您所回答的,最简单的方法是使用blender,还有一个名为blend_render_info.py的blender安装附带的脚本,它提取开始和结束帧设置而不使用blender二进制文件,我是不确定扩展它有多容易,但它确实适用于python 2.x和3.x

为了获得更详细的信息,我们创建了一个名为blender-aid的旧项目,用于读取和更改混合文件数据,最近有人使用python 2.7提取混合文件数据,如{{3}中所述}}