Parent/child transformation is incorrect when the parent's scaling is changed
Open, ConfirmedPublic

Description

System Information
Archlinux 64 bit
Intel Integrated Card
i5

Blender Version
Broken: 2.78b 3c043732d3
I suspect this has been broken for a very long time as issues with scaling and parenting have come up on blenderartists for several years.

Short description of error
Parent/child transformation is incorrect when the parent's scaling is changed and the parents axis do not align with world axis.

Exact steps for others to reproduce the error
Parent one object to another. Set the parent to rotate and scale. Watch how the child does not stay in the correct position relative to the parent. Start the game engine for the attached blend:

In the blend there is the following setup:


A sphere is parented to the extruded cube. Regardless of the rotation and scale of the extruded cube, the sphere should remain in-line with the cube's extrusion (and at a constant relative percent along it). In the game engine, the results can look like:

Where the sphere is both out of line and the wrong distance away.

It works correctly in the viewport.

Details

Type
Bug

I suppose the problem lies in the function: bool KX_NormalParentRelation::UpdateChildCoordinates(..) of KX_SG_NodeRelationships.cpp (but I may be wrong)

It seems that there really is something wrong in the code thet updates the child coordinates of bge.
Making this change the problem is solved, (but this is not my area so I'll wait for a second opinion)
P444

Sergey Sharybin (sergey) triaged this task as "Confirmed" priority.Jun 9 2017, 11:47 AM