• Runtimes
  • [UE4] Runtime feature request and some questions.

Related Discussions
...

So I'm in the middle of developing my project with UE4 using Spine.
I had lots of trouble while using UE4 Spine Runtime.
Then I came up a feature request list, some suggestions and questions.
Feature List:

  • Color control (RGBA) for single bone / slot.

  • Single bone / slot visibility control.

  • Better material impl.

  • Collision per bone/slot.

  • Smooth transition between animation like Dragon Bones did.

  • Set world location doesn't work for most of the time.

  • All of the features above should have an extra option that whether it is recursive.
    They had an argument for set animation for how long transition will take between animations.
    I am a co-developer of Dragon Bones, so I think you guys should take a look at that library, it got some really nice
    handy functions.

- Single bone / slot transform control using BP.(with recursive option)
I know there is a component called SpineBoneDriver but it isn't very handy.
Instead of using an actor for the target, I suggest you guys should also add support for Component.
The current version, changing single bone/slot's transform is really a pain in the ass.
Here comes the question:
I've written a BP node for changing rotation using spBone_rotateWorld , but the child's bones aren't being rotated.
How can I rotate a bone with all of its child's bones?

Few month ago I thought the runtime might be ready in few month.
But now still no improvements, I have to write everything.
Is there any schedule for UE4 Spine Runtime?
I'm waiting for 3.6 version.

By that said, Spine still is the best 2D animation tool for UE4, I really want to help to make it better 😉

First of all, sorry for the late reply, I completely overlooked this, and THANKS for the great feedback. We did a Spine Runtime survey a few weeks ago, hoping especially for feedback on the new UE4 runtime, but didn't get anything close to this detail!

Let me go through the feature list:

  • Color control for bones/slots: Let's do it!
  • Single bone/slot visibility control: Let's do it (in a nicer way than currently possible)!
  • Better material impl: Please provide more details here. What is missing? What is broken?
  • Collision per bone/slot: this is harder to achieve with the current architecture, as we batch all meshes into a single mesh for both rendering and collision. If we didn't batch it like this, rendering performance would take a hit. Fixing this will take some time.
  • Smooth transitions: this has been supported since day 1, see Spine-UE4 Runtime Documentation: Skeleton Data Asset
  • Broken set world location: Can you provide us with an example? It works in my tests
  • Better SpineBoneDriver: jupp, also allowing to target components makes a lot of sense.

Regarding spBone_rotateWorld, that works as intended, but you need to make sure you issue this update at the correct time. The documentation describes the life-cycle, and when to apply modifications to bone transforms here Spine-UE4 Runtime Documentation: Lifecycle

The feature list above will not make it into 3.6, which is due for release shortly. But we'll get this into 3.7! Thanks for the feedback, and keep it coming!

Question for you: are you using our Spine UE4 runtime with Dragon Bones?

I've opened an issue to follow along here. We'll rework the current issue text based on your and other users feedback [ue4] Improvements · #905

Hello.
About your question:
Better material impl -> You can't change material or material's parameters at runtime.
Collison isn't very important, but it is a nice feature to have.
Broken set world location-> As you said, when I set positions using begin/after transform event, it worked perfectly. Sorry about that, I should
read it carefully.

About the question: No I didn't use Dragon Bones.
Because Dragon Bones is flash-based, which means it can't deform a sprite like Spine do, this is the main reason I'm using
Spine.

Also, I'm glad I can help, I'll also keep you guys fed. 🙂
One more question: Did you guys tested this plugin on other platforms?
Because my game will release on PS / XBOX / Switch.
If you didn't, I'll test it for you and let you know the results.

Thanks for the update! The material should be modifiable at runtime, I'll check again.

As for platforms: we do not have access to PS/XBOX/Switch development kits. We'd appreciate if you could get back to us on this!

A quick reply on material:
Make a custom material with all kinds of parameters, then create a Dynamic Material Instance, then assign this DMI to SpineRenderComponent.