• RuntimesUnreal
  • Bone follower not working inside a Blueprint

I can't seem to be able to make the SpineBoneFollower component work inside a BluePrint.

It works just fine if I use like in the provided spineboy example, just dropping them in the scene, but that wouldn't be very useful. Is this by design?

    Related Discussions
    ...

    mintia_soda When you say that SpineBoneFollower does not work inside BluePrint, do you mean that when you check Raptor_Blueprint in the example scene, SpineBoneFollower's Target is set to None? Specifically, what state do you want it to be in to accomplish what you want to do?

    In the example scene, SpineBoneFollower's target is set to TargetSpineboy_Blueprint.

    I can replicate the same thing in my project, and it works fine, if the blueprints are in the in the World level, but if I try to do the same inside a blueprint, the SpineBoneFollower target doesn't let me select the Spine skeleton. If I try to do the same in the example file and put TargetSpineboy_Blueprint and BoneFollower_Blueprint and add a SpineBoneFollower to it, it also doesn't let me set the target to TargetSpineboy_Blueprint, so it's likely not my project settings.

    I managed to get a similar result, using Get Bone World transform (SpineSkeleton) -> Set World Transform (target). I have found similar posts here and other forums from people having the same problem, so rather than a bug it would seem that functionality is not implemented.

    Either way, thanks for your time!

      mintia_soda I'm glad to hear that you have found a solution! However, I am still not sure why it was necessary for you to do what you wanted to do. Can you please tell us why you are having trouble with this? If this is a common problem, I would like to create an issue ticket to improve it.

      If I can't add a SpineBoneFollower inside the blueprint of say, an enemy, I would have to manually add a SpineBoneFollower every time an enemy appears in the game, so it's not very useful. Does that make sense? 🤔

        mintia_soda Now I understand the issue, thanks for your reply! How about using level instances* to solve that issue? (*available from UE5):
        https://docs.unrealengine.com/5.0/en-US/level-instancing-in-unreal-engine/
        As described in the "Creating a Packed Level Blueprint" section, you can create a Packed Level Blueprint by selecting Actors you want to pack, right-clicking one of them to pull up the context-sensitive menu, navigating to the Level option and selecting "Create Packed Level Actor".
        However, when I tried this on my end with UE5.2, the editor always crashed... I am using UE5.2 on macOS and it crashes frequently, so I am not sure if this is because the actor has the SpineBoneFollower component. So unfortunately I have not yet confirmed if this will work, but I hope this will be of some help.

        I hadn't thought of that!
        I tried doing it now, it seems to work but I also got a bunch of errors and warnings, but the bone following works. I will probably stick with the Get Bone World transform as I think it will be more flexible, but for someone else having the same problem that might work for you!
        美咲さんありがとう! 🤗

          mintia_soda Glad to know that the idea of using level instances seems to work!! And thanks for your kind words!
          どういたしまして!😊

          um ano depois

          @Misaki Hi, I just want to chime in here as I had the same issue.
          The component only attaches to actors in the world. However, this is not very useful as most games have enemies spawn in while playing.

          However, the entire problem is solved by this one line of code:

          It just makes it so when the actor is created, if no Target was set, it sets it to itself. 🙂

            JuiceTin Very cool, thank you so much for sharing this with us!