Blender在Python脚本中冻结?
我刚接触Blender和Python。
我试着在Blender的脚本控制台里用Python脚本来修改一个物体的属性。
我不明白的是,我可以这样做。
bpy.data.object['Cube'].rotation_euler.x+=1
但是当我把它放进一个循环里。
import time
i=1
while i<100:
i+=1
bpy.data.object['Cube'].rotation_euler.x+=1
print('run once')
time.sleep(5)
Blender就卡住了,根本没有“运行一次”的输出。有人能告诉我这段代码哪里出问题了吗?
1 个回答
2
你的脚本并没有卡住,其实是因为在循环中,Blender没有机会去更新界面。
这个time.sleep(5)命令会让程序暂停5秒钟,运行100次就意味着整个脚本要花8分钟才能完成,这时候Blender才会再次更新它的界面。
你可以考虑使用一种叫做模态操作的东西——在Blender的文本编辑器里有几个示例可以参考。