2024-05-16 20:23:48 发布
网友
我正在使用python脚本在Blender中导入和导出wavefront obj文件。问题是,如果已经添加了同名的对象,Blender会将索引添加到对象的名称中。例如,myObject变成{},如果过去已经添加了一个名为myObject的对象(即使该对象被删除)。当我将对象导出为.obj时,名称不再与以前相同。在
myObject
如何重置“姓名计数器”?在
blender中的每个项目在其所属的项目列表中必须具有唯一的名称(每个名称都是字典键),并将根据文件中的其他项目附加一个数字后缀使名称唯一,请注意,它基于文件而不是场景,因为混合文件可以包含多个场景。在此过程中不会考虑已删除的对象,而其他项(如材质和网格数据)将保留在列表中,直到文件关闭。在
obj导入器首先创建网格数据块,然后使用与网格数据相同的名称创建对象-这会导致新对象的数字后缀始终大于以前的对象。在
如果要使用python脚本导入多个对象,则可以在导入后重命名该对象。在
bpy.ops.import_scene.obj(filepath='Object1.obj') bpy.context.selected_objects[0].name = 'Object' bpy.context.selected_objects[0].data.name = 'Object'
在这种情况下,任何名为“object”的现有对象都将被重命名为具有后缀。在
blender中的每个项目在其所属的项目列表中必须具有唯一的名称(每个名称都是字典键),并将根据文件中的其他项目附加一个数字后缀使名称唯一,请注意,它基于文件而不是场景,因为混合文件可以包含多个场景。在此过程中不会考虑已删除的对象,而其他项(如材质和网格数据)将保留在列表中,直到文件关闭。在
obj导入器首先创建网格数据块,然后使用与网格数据相同的名称创建对象-这会导致新对象的数字后缀始终大于以前的对象。在
如果要使用python脚本导入多个对象,则可以在导入后重命名该对象。在
在这种情况下,任何名为“object”的现有对象都将被重命名为具有后缀。在
相关问题 更多 >
编程相关推荐