UPBGE中Blender脚本修改后无法在视口更新的问题求助
Blender脚本修改面索引后视口不更新的解决方法
在Blender中修改脚本内的变量或函数后,结果通常应该自动更新。我需要选择场景中平面的某个面并挤出指定单位,初始操作正常,但修改面索引后,视口未更新结果。尝试「重新加载脚本」以及通过Blender→系统→重新加载功能,均未解决问题。
初始问题代码
import bpy import bmesh bpy.ops.object.editmode_toggle() bpy.ops.mesh.select_mode( type = 'FACE' ) plane = bpy.context.scene.objects['Plane'].data bm = bmesh.new() bm.from_mesh(plane) #bpy.ops.mesh.normals_make_consistent(inside=False) bm.faces.ensure_lookup_table() for face in bm.faces: face.select = False bm.faces[42].select = True #bm.faces.active = bm.faces[10] bpy.ops.mesh.extrude_faces_move(TRANSFORM_OT_shrink_fatten={"value":+10}) bpy.ops.object.editmode_toggle() #bm.to_mesh(plane)
修正后的可用代码
现在脚本已正常工作,修正后的代码如下:
import bpy import bmesh bpy.ops.object.editmode_toggle() bpy.ops.mesh.select_mode( type = 'FACE' ) plane = bpy.context.scene.objects['Plane'].data bm = bmesh.new() bm = bmesh.from_edit_mesh(plane) #bpy.ops.mesh.normals_make_consistent(inside=False) bm.faces.ensure_lookup_table() for face in bm.faces: face.select = False bm.faces[19].select = True #bm.faces.active = bm.faces[10] bpy.ops.mesh.extrude_faces_move(TRANSFORM_OT_shrink_fatten={"value":+10}) bmesh.update_edit_mesh(plane) bpy.ops.object.editmode_toggle()
效果展示

内容的提问来源于stack exchange,提问作者Acknowledge
相关产品推荐
相关产品推荐

