Finding the local space of a Control Rig control in order to set its transform from an Animation Blueprint

Yes, it’s easy to convert to local space within the Control Rig graph, but the problem I’m trying to solve is how to convert to local space from the AnimBP graph. That would require knowing the local space of a given control from outside the Control Rig and it doesn’t look like it exposes that information anywhere.

Converting the control space at the point it’s being accessed in the Control Rig graph, like you suggested, is an interesting approach but I don’t think would work – if the control’s transform were set in the AnimBP then those transforms are already presumed to be in Local Space, so asking for the Local Space version is just going to give you whatever transform was passed in, it’s not going to know it needs to do any space conversion.

Though I think it WOULD be possible to write a custom function inside the Control Rig graph to fixup the supplied transforms, since the control’s local transforms are known there. And that might end up being the most elegant fix here. It still feels quite cumbersome but at least it’s less hacky than having to create shadow variables for every control like I’ve been doing…

I guess I’m just surprised that Control Rig makes it so easy to pass in transforms for controls from the AnimBP (all you have to do is click “Use Pin” on the AnimBP’s Control Rig node), but requires the transforms be converted into control space without providing any straightforward way to do that.