• RuntimesUnreal
  • Skeletons with "Inherit" crash the editor

Dragging in any skeleton that uses the Inherit feature in any animation instantly crash the editor, there is an exception on like 56 of InheritTimeline.cpp.

I don't have the exact error atm, as we've removed all inherits temporarily to continue with production (with broken animations). So here's the line causing it, can't remember if it was an out of bounds error, but adding any "Inherit" animation into unreal should show the exact error

Is it possible to get this fixed soon, or is there some workaround?
I have some animations that would be very difficult without Inherit. Thanks!

(Sorry I'm posting this here as I'm having issues with my github atm)

Related Discussions
...

Just a note that it crashes the unreal editor, not spine.

Also both Spine & Unreal runtimes are fully up to date, however this inherit has always crashed unreal. I am only reporting it now as we need to use it

    JuiceTin Sorry for the trouble. I have confirmed that I can reproduce the problem of crashing (in my case it became infinite loading and unresponsive) when trying to import a skeleton with an Inherit timeline. I have created an issue ticket here: EsotericSoftware/spine-runtimes2672

    We are investigating this issue, but unfortunately it is difficult to give you a definitive answer as to when this will be fixed.
    A possible workaround is to either disable inheritance in setup mode, since this problem only occurs when you have an Inherittimeline, or to duplicate the bones and slots and have one with inheritance enabled and one with inheritance disabled, so you can switch which is displayed in the middle of an animation.

    JuiceTin When checking conditions for this issue, I found the crash only occurs if inheritance is toggled during an animation, not at frame 0. Therefore, it may be possible to avoid this problem by splitting the animation into two separate animations at the time you want to switch inheritance, and then playing the split animation in sequence.

    I've tried the assets Misaki created using the latest spine-cpp, spine-ue in UE 5.4.4 on macOS. I do not get an error on import of Misaki's assets.

    @JuiceTin are you sure you have also updated the copy of spine-cpp in the spine-ue plugin?

      Mario
      Yup! I have updated to the latest of spine-ue and inserted the latest spine-cpp in the SpinePlugin\Public folder before making the post to confirm it did produce the same crash.

      @Misaki Have you tried upgrading to the latest spine-cpp too?

      Also thanks for the suggestion Misaki! Knowing it's works at frame 0 is great to know for workarounds, as well as your split animation idea!

      It makes sense that frame 0 works, as it creates an out of bounds error with _frames[frame+Inherit], which would essentially make it _frames[frame+0] (using the normal frame index)

        JuiceTin I apologize, the reason Mario could not reproduce the problem was a problem with the reproduction project I had prepared. It seems I oversimplified the animation and deleted the key needed to reproduce the problem.

        Just to be sure, here is the difference between animations that do not reproduce the problem and animations that do:
        - The case in which the problem is not reproduced

        This animation can be played back successfully in UE5.4.4:

        - The case in which the problem is reproduced

        In the animation where the problem is not reproduced, the gun bone's rotation inheritance is turned off at frame 30.
        In the animation reproducing the problem, there is a key with the gun bone's rotation inheritance turned on at frame 0 and the gun bone's rotation inheritance turned off at frame 30. This bone's rotation inheritance is turned on in setup mode, so its appearance does not change. The crash can be reproduced with these two keys.
        Please be patient as we continue to investigate this and try to resolve it.

        9 天 后

        Hi, sorry I thought I responded, but thankyou for the information. We were able to use a workaround by only using a single inherit at frame 0 and no where else. 🙂

          JuiceTin Glad to hear that you are able to use the workaround for now!
          Although we are not sure when we will be able to fix the issue with multiple inherit keys, you can subscribe to the issue (EsotericSoftware/spine-runtimesissues/2672) to be notified when there is progress in fixing the issue.

          18 天 后

          Sorry for this taking so long. This is now fixed in spine-cpp. Please update your copy of the spine-ue plugin, including spine-cpp.