So, I have searched for this for awhile now and I have yet to find a good answer…
Here’s the steps to re-creating my problem:
Have a cube in the scene then duplicate (instance) it via alt+D
Attempt to edit one of the instances location via the menu you can pull up with N (Result: does not move the preview, but the render of the scene renders the new position correctly)
Attempt to edit the location of the instance with a python script:
import bpy print() print(bpy.context.scene.objects.active) print(bpy.context.scene.objects.active.location) location = bpy.context.scene.objects.active.location location.x = 10 location.y = 15 location.z = 10 bpy.context.scene.objects.active.location = location bpy.context.scene.update() print(bpy.context.scene.objects.active.location) print(bpy.context.scene.objects.active.matrix_basis) print(bpy.context.scene.objects.active.matrix_local) print(bpy.context.scene.objects.active.matrix_world)
Result: Preview still does not move, and rendering the scene does render it in the correct location. The printed matrices show that the basis is calculated correctly, but the world transform never updates properly even with an explicit call to update.
This is driving me nuts. Am I missing something about duplicates/instances that I should know about in blender?
Thanks for any help/time on this matter.