将Python脚本应用于Blender中的大量.obj文件

将Python脚本应用于Blender中的大量.obj文件,python,cmd,scripting,automation,blender,Python,Cmd,Scripting,Automation,Blender,我想,也许使用命令行,在后台模式下运行Blender,让它处理大量单独的.obj文件。“过程”是指对每个.obj文件中包含的单个网格应用一些命令,然后将每个修改的网格作为新目录中的新.obj文件导出TLDR:我已经编写了一个脚本,但我遇到的问题是理解如何在大量.obj文件上运行脚本 这是我到目前为止所拥有的 import os import bpy bpy.ops.object.editmode_toggle() bpy.ops.mesh.normals_make_consistent(in

我想,也许使用命令行,在后台模式下运行Blender,让它处理大量单独的.obj文件。“过程”是指对每个.obj文件中包含的单个网格应用一些命令,然后将每个修改的网格作为新目录中的新.obj文件导出TLDR:我已经编写了一个脚本,但我遇到的问题是理解如何在大量.obj文件上运行脚本

这是我到目前为止所拥有的

import os
import bpy

bpy.ops.object.editmode_toggle()

bpy.ops.mesh.normals_make_consistent(inside=False)

bpy.ops.transform.resize(value=(100, 100, 100))

bpy.ops.export_scene.obj(filepath="C:\\output", check_existing=True)
这似乎是一个简单的问题,但谷歌搜索并没有起到任何作用。文档说我可以在cmd中执行以下内容,但我不明白如何将其转换为这种情况

blender myscene.blend --background --python myscript.py

记住,我正在处理大量的.obj文件,而不是.blend文件。

您可以在命令行中使用Windows cmd.exe中的for循环来执行此操作

for %%F IN (file1.blend,flie2.blend,file3.blend) DO (blender %%F --background --python myscript.py)
或者在unix(bash/sh)下


还是我不明白你的问题。这个答案似乎很简单。

您希望使用一个循环,对每个文件执行相同的操作。是一个导入和导出多个OBJ的示例-将您的步骤添加到循环中。使用第一个步骤,我可以用什么替换.blend文件列表?我有一个很大的.obj文件目录,而不是一个小的.blend文件列表。blender如何知道从cmd导入这些内容?是否将命令包装在导入脚本中?
for file in *.blend; do blender "$file" --background --python myscript.py; done