Operating system: Windows 10
Graphics card: GTX 1080
Broken: 2.80, 93c19a5a2cf5, master, 2019-04-21, as found on the splash screen
Short description of error
As shown in this video, blender freaks out a bit when a parent's local translation is set to its child's opposite local translation.
In this video, I'm moving suzanne around, the cube is the suzanne's parent and set to have its translation values to the opposite of suzanne's translation via drivers.
When I stop moving the mouse, suzanne moves back in place. I also need to pres alt + G twice to have everything back in place properly.
It feels like Blender tries to answer the first request (moving suzanne) and then remembers that she shouldn't actually move and puts her back in place.
The child object should look like it's not moving at all since
Here's how it should look (in maya) I'm moving the sphere which is the child of the locator:
Exact steps for others to reproduce the error
- Create two objects.
- Parent one to the other one.
- Add Drivers on the parent translation attributes so that they evaluate to the opposite of the child's translation attributes.
for clarity's sake:
parent.localTranslateX = -child.localTranslateX parent.localTranslateY = -child.localTranslateY parent.localTranslateZ = -child.localTranslateZ
Here's a blend file with the setup already done.
This kind of setup is useful when attaching controllers to the surface of a deformed mesh like in this video
The controls objects don't really move according to their translation values since they are cancelled out by their parents. Another parent node on top of that is then attached to the mesh which in turn makes the controllers follow the mesh.