Làm cách nào để nhân bản một đối tượng với các mắt lưới độc lập? [bản sao]
Tôi đang cố gắng sao chép một đối tượng lưới bằng python. Sau khi nhân đôi, tôi cố gắng thay đổi lưới của đối tượng được sao chép, nhưng lưới của đối tượng ban đầu cũng thay đổi.
Có vẻ như cả hai đối tượng đều có lưới giống nhau. Làm cách nào tôi cũng có thể nhân đôi lưới?
Đây là một số Mã:
>>> obj1 = bpy.data.objects['Cube']
>>> obj2 = obj1.copy()
>>> bpy.context.collection.objects.link(obj2)
>>> obj1.location = Vector((3,0,0))
>>> obj2.animation_data_clear()
>>> ve = obj2.data.vertices[0]
>>> ve.co = ve.co*2
Trả lời
1 HariSreedhar
Bạn nên sao chép dữ liệu đối tượng.
obj1 = bpy.data.objects['Cube']
data = obj1.data.copy()
obj2 = obj1.copy()
obj2.data = data
bpy.context.collection.objects.link(obj2)
obj1.location = Vector((3,0,0))
obj2.animation_data_clear()
ve = obj2.data.vertices[0]
ve.co = ve.co*2