对于bpy.ops.export_mesh()

时间:2019-08-19 17:56:11

标签: python blender

我编写了一个python脚本,该脚本在Blender中设置场景,检查某些条件并将网格另存为.ply。我注意到脚本的内存使用量很快增加,直到使用完所有内存。我发现重复调用bpy.ops.export_mesh.ply()会导致内存增加。

通过监视bpy.data.meshes的内容,我注意到bpy.ops.export_mesh.ply()创建了网格的副本。但是,删除所有网格,材质,纹理和图像,而无需用户使用此类代码块

for block in bpy.data.meshes:
    if block.users == 0:
        bpy.data.meshes.remove(block)

不能解决问题。

我的代码中导致内存增加的部分如下:

for ob, outpath in zip(obs, outpaths):
    ob.select = True
    bpy.context.scene.objects.active = ob
    bpy.ops.export_mesh.ply(filepath=outpath)

是什么导致内存使用量增加?我该如何预防?我正在使用Blender 2.79b。

0 个答案:

没有答案