【发布时间】:2020-09-25 00:49:00
【问题描述】:
我正在尝试通过两种颜色之间的延迟来更改 Cube 的颜色。这似乎是不可能的
time.sleep(5)
当我运行脚本时,它会等待 5 秒并仅显示第二种颜色,而第一种从未使用过。
import bpy
import time
mat = bpy.data.materials.new("RED")
mat.diffuse_color = (0.8,0,0)
mesh = bpy.context.object.data
mesh.materials.append(mat)
time.sleep(5)
mat = bpy.data.materials.new("GREEN")
mat.diffuse_color = (0,0.8,0)
mesh = bpy.context.object.data
mesh.materials.clear()
mesh.materials.append(mat)
Certes il manquait "object", mais c n'est pas l'origin du phénomène, j'ai essayé les deux changments de couleurs séparément pas de problème, mais lors que je les assemble et les sépare par time.sleep( 5) seul de vert est affiché !谢谢回复
【问题讨论】:
-
您可能希望显示您正在运行的代码的相关部分,这将有助于我们为您提供帮助。 Pourrais tu inclure la partie du code en question? Ça nousaiderait à t'aider!
-
谢谢,问题已完成!
-
est-ce que c'est normal que la Premiere fois:
mesh = bpy.context.dataet la deuxieme foismesh = bpy.context.object.data? J'aurais 倾向 a croire que ca pourrait etre la partie coupable de ton erreur。 Je n'ai pas respecté la doc debpypar contre -
J'ai enfin touvé。 C'est une question de rafraichissement de l'affichage de Blender, il suffit d'ajouter avant le time.sleep : bpy.ops.wm.redraw_timer(type='DRAW_WIN_SWAP', iterations=1)