0
有人可以提供一个简单的方法来侦听搅拌机python中的事件吗? 我有一个自定义选择字段在纹理面板中的选项:光照贴图,法线贴图,凹凸贴图,地图。如果用户选择了normalmap,我想自动选中use_map_normal复选框标记为True。我无法确定如何为此添加事件。我不能在绘图方法中执行它,因为它在尝试更改任何bpy数据时会产生错误。谢谢,搅拌机python onchange事件
吉姆
有人可以提供一个简单的方法来侦听搅拌机python中的事件吗? 我有一个自定义选择字段在纹理面板中的选项:光照贴图,法线贴图,凹凸贴图,地图。如果用户选择了normalmap,我想自动选中use_map_normal复选框标记为True。我无法确定如何为此添加事件。我不能在绘图方法中执行它,因为它在尝试更改任何bpy数据时会产生错误。谢谢,搅拌机python onchange事件
吉姆
当添加自定义属性,您可以指定当属性更改调用的函数,这个函数可以用来更新其他属性。
例如:
def update_checkbox_dependencies(self,context):
active_index = context.object.active_material.active_texture.name
bpy.data.textures[active_index].use_normal_map = True
bpy.types.Texture.THREE_map_type = EnumProperty(name="Map Type",
items=map_type_array, default=constants.MAP,
update=update_checkbox_dependencies)
你可能想尝试http://blender.stackexchange.com。 –
谢谢,我看了这个论坛,发现了一个解决方案。我不得不在我的类型定义参数中添加update = some_method。然后添加它调用的方法来进行更改。 – user3661557