I'm trying to implement a SpineBoneFollower in a UE4 project, but I can't seem to set the Target. First off, when I select the Target dropdown, it only shows me map objects (nothing in the actor). Then, if I select an actor in my map, it comes up with the error and doesn't select anything:
LogProperty: Warning: Illegal TEXT reference to a private object in external package (Actor /Game/Map/mikemap.mikemap:PersistentLevel.SwordArrow) from referencer (SpineBoneFollowerComponent /Game/Character/SpineCharacterBase.SpineCharacterBase_C:SpineBoneFollower_GEN_VARIABLE). Import failed...
LogProperty: Warning: Illegal TEXT reference to a private object in external package (Actor /Game/Map/mikemap.mikemap:PersistentLevel.SwordArrow) from referencer (SpineBoneFollowerComponent /Engine/Transient.World_0:PersistentLevel.SpineCharacterBase_C_0.SpineBoneFollower). Import failed...
What's the correct way of using a SpineBoneFollower? My intent is to have dynamic swappable weapons on a character, but to have the weapons loaded separately and not through the spine editor.
I'll keep messing with it to see if I can't find the answer as well...
I've been able to duplicate the functionality in blueprints with local actor components:
The source of the follower component looks simple enough. Maybe I'll take a crack at it later.
When I use SetFlipX() on the SpineAnimation, the Y and Z of the rotation vector invert from +,- to -,+ on the bone's world transform.
SpineAnimation->SetFlipX(true);
This caused my sword to turn upside down:
So instead I manually flip the SpineAnimation component's relative rotation on my actor.
SpineRenderer->SetRelativeRotation(FRotator(0.0f, -180.0f, 0.0f));
Now the "sword" (an arrow component) is properly oriented:
I might make my own bone follow component that takes local scene components instead of actors from the map.
:yes:
Update: One drawback to my method is that the z-ordering of my added weapon isn't preserved in relation to the character when the character rotates.... I'm still working on that part: then I'll post pics!