Page MenuHome

Parenting objects to bones causes offset
Closed, ResolvedPublic

Description

System Information
Operating system: MacOS 10.14.2
Graphics card: AMD Radeon R9 M395X 4096 MB

Blender Version
Broken: Blender 2.80 beta Jan 18
Worked: Blender 2.79

Short description of error
When parenting an object to a bone, the object is wrongly offset from it's previous position. This was not the case in 2.79.

Exact steps for others to reproduce the error
This scene is nothing special, just a normal bone and a normal cube. No special settings or anything out of the ordinary. In any case, it serves as a very simple test case for this issue.

Open this Blend:

  1. Select the cube, then the bone
  2. enter pose mode and make sure the bone is selected
  3. Press Ctrl-P and select 'Bone'

You'll see the cube fly away to a different position. It should stay put and just become a child without moving. This worked correctly in 2.79.

2.8 beta:

Before Parenting:

After Parenting:

This offset should not happen.

2.79:

Before Parenting:

After Parenting:

Here the object stays correctly put.

Event Timeline

Philipp Oeser (lichtwerk) triaged this task as Confirmed, Medium priority.Jan 18 2019, 3:17 PM

I've narrowed down the bug.

It appears to be related to the redo option Keep Transform.

However, even if you enable it, you have to toggle it off and on again for it to work. Eventually it does do the right thing. But in 2.7x, you did not need to enable this option for the parent/child relationship to have the correct offset. Very strange.

@Campbell Barton (campbellbarton) Might you have an idea of why this option is acting strange? All I can deduce is that there's something wonky to do with Keep Transform when parenting to a bone.

Hmm, even if you just change the redo from Bone to something else and back to Bone, it does the right thing. So it seems like something is not being set correctly initially with this operator?

Got a fix for this, will upload shortly

Since D4309 doesnt seem to be the desired solution, I'll step down from this and put on @Sergey Sharybin (sergey) 's desk, sorry...

Just confirming the bug here so you know it affects other users. (Currently toggling the option in operator redo as a workaround)

Brecht Van Lommel (brecht) raised the priority of this task from Confirmed, Medium to Confirmed, High.Mar 4 2019, 6:44 PM

@Philipp Oeser (lichtwerk), is not an undesired solution, but there is something confusing in there which needs some clarification.
Will reply in the patch review.