Hello. It seems like in 4.25 it’s no longer possible to determine a Child Actor Component’s scale in Construction Script. If the Component was scaled in a Level, this will be known on BeginPlay, but in Construction Script both the child and the parent think the Child Actor Component’s scale is still (1,1,1). This used to work one way in 4.23 (parent didn’t know its child’s modified scale, but at least the child knew its scale within parent).
- Create an Actor Blueprint Class BP_Inner
- Create an Actor Blueprint Class BP_Outer
- Add a Child Actor Component to BP_Outer and set its Child Actor Class to BP_Inner
- In BP_Inner Construction Script: GetParentComponent → GetRelativeScale3D → Print String
- Compile both Blueprint Classes
- Put an instance of BP_Outer into a Level
- In this Actor’s Details panel in the Level, select its ChildActor (Inherited) Component and scale it to 3.0 in the X axis
- Observe the print result in the viewport (with Realtime enabled) or in the Output Log
In 4.23 this would return (X=3.000) but now it’s (X=1.000). Unfortunately it still doesn’t work from within the parent class either (also X=1.000). I’m going to submit this as a bug, but perhaps someone knows a fix or a workaround. Thank you in advance.