for 循环中的 objects.location 请求不会更新

问题描述

我已经开始在 Blender 中使用 Python。 我正在尝试为动画获取单个对象的骨架,并且我正在尝试运行以下脚本:

for count in range(1,value,1):
    bpy.context.view_layer.objects.active = bpy.data.objects[count]
    loc = bpy.data.objects[count].location
    bpy.ops.object.armature_add(enter_editmode=False,align='WORLD',location=(loc[0],loc[1],0.1),scale=(1,1,1))

结果给出了第一个对象上的所有骨架。变量 loc 似乎没有更新。

有人可以帮忙吗?

解决方法

解决了!

我的旧脚本会将一个新对象“Armature.001”添加到 bpy.data.objects 中,该对象出现在对象列表中“Cube.001”之前。

所以 forloop 会向前移动,但所有对象也会向前移动,因此没有效果。