Non-skeletal animation, how to handle properly (Blender 3D)?


We have a scene developed in Blender 3D which use only non-skeletal animations. It is a techno-style scene about the “classical” mechanisms with no any “organics”, so it was evident choice to use simple position/orientation keyframing with no skeletons. Now we have some issues with importing into the UE4, so I am here to ask some help from community.

We was able to run the scene somehow, but there are some issues; so the intent of this thread is to get help with understanding of non-skeletal animations handling aspects as much as possible (I always prefer to deeply understand the things I am working with).

We work with UE 4.5.1, Blender 2.72b and below are my initial questions:

  1. Does UE support non-skeletal animation “officially” ?

As I am understand at this moment, the UE always import animation from FBX as skeletal animation and for non-skeletal animation UE just automatically insert single bone per object (?) and apply object animation to this bone, so internally it always have a deal only with skeletal animation for content imported from FBX. Am I right ?

  1. If I am right above, what kind of limitations are exists for such kind of automatic conversion from non-skeletal to skeletal animation ? Any gotchas here ?

Asking to get as much as possible information in forward, to avoid possible problems as soon as possible.

  1. I have very limited knowledge about the FBX and I am wonder about the way it store non-skeletal animation (and how it differ from skeletal) ?

While this is not exactly UE-related question it still could be interesting and possibly helpful in context of this thread to get some information about this. So if there is someone who can provide some details, I will be very thankful. I think it could help to understand the discussed aspect better.

  1. One of a practical problem we are were faced is the following: we have a very long animation for some objects (a couple of minutes of constant movements and orientation changes) and after importing into UE we got it not as a single Animation Sequence but rather as a relatively big and non-uniform set of consecutive Animations Sequences. By “non-uniform” I mean that all parts (Animation Sequences) has different length. It seems that it somehow related to the keyframes we are have for the object (and these parts are seems to be just key-to-key) but there are still no clear understanding what’s going on and why we got such result.

We are continue to investigate this issue and will appreciate any help on it. Maybe there are some ideas about the possible directions of investigation to get rid of this issue ?

<<<<< UPDATE#1
It seems that we found the cause of this particular issue (p.4 in my list of questions). When do export from Blender we were have “All Actions” option (FBX Export settings pane) are set and this somehow lead to breaking single action for exported object into overlapped sections with starts and ens corresponding to starts and ends of actions from another objects. I was even wrong initially when describe the problem: the sections are not consecutive, but seems to be overlapped (even worse). Still have no clear understanding of the issue but at least unset of this option provide us with single Animation Sequence as we expect:

Continue to investigate to ensure that animation is correct and there are no other issues. Still interesting about “All Actions” export options details.

UPDATE#1 >>>>>

<<<<< UPDATE#2

After a lot of digging into the issue, it seems that at current moment the Blender-to-UE workflow is not ready for any kind of serious development. The most problems are on the Blender side and in particular in the FBX export implementation.

Our current target issue about the Blender’s FBX exporter is the way it export animation tracks. Currently it just export the whole range of active frames of scene timeline ignoring the actual length of particular actions (AnimationSequences), so all actions has same length and ones which are actually shorter have useless “static” keys at the end. Besides of that there are seems to be a problem to setup an exporter to export expected set of actions (most times we got somehow unexpected set of AnimationSequences after importing into UE).

But there are also one practical problems related exclusively to our project itself. The scene in Blender were developed with meters as dimensions units (1 scene unit = 1 meter), this cause some inconveniences due to the fact that UE use centimeters as units. While it looking like the sole problem about the meshes scale, at practice the things are a bit more complicated due to the way the FBX export/import work currently in Blender-to-UE workflow. It seems that the only right way to overcome this is to manually rescale the whole scene in Blender and readjust animations accordingly (animations have the tendency to become broken after such kind of manipulations). It will took a time, but other options are not looks right.

UPDATE#2 >>>>>

Thanks a lot in advance!

<<<<< UPDATE#3

P.S. Will try to collect here some links to related threads/posts:

UPDATE#3 >>>>>

<<<<< UPDATE#4
P.P.S. As a response to request by Geodav below is a link to interesting example (a part of our scene) which could be used as a show-case for issues discussed in this thread:

Non skeletal animation show case

Please ignore the size of objects, they are not in UE scale unfortunately, but this should not interfere with animations issues this example is created for.
UPDATE#4 >>>>>

I don’t know, I may be wrong but this sounds like a problem that would have been better addressing in UE4 as opposed to Blender. In other words you make the elements in Blender and animate them in UE4.

I assume you mean vertex or point cache data animations in which case no UE4 does not support them at the moment but is on the road map.

Hope soon as I’ve a building I want to blow up :smiley:

Unfortunately this is not an option in our case:

  1. Scene a bit complex and it already developed in Blender, it would be a time consuming task to rebuild it completely in UE4
  2. Our artist really good at using Blender and use Blender’s tools extremely effective. So he able to produce content very efficient with it. UE4 is also capable and has number of powerful tools but it still can’t absolutely replace tools like Blender, Max, etc (and should not, of course).
  3. We are target to master the Blender->UE workflow, so we are trying all these for purpose. This project a first step to learn how to handle this workflow efficiently.

We use simple animations of objects’ position and orientation. A kind of simplest possible animations. And unfortunately we have currently problems even with these simplest cases.

I don’t mean that. In fact there’s an entire level in the Example Package with nothing but animations (there are in fact gears and all types of spinning pick ups as well).

@Alexey i think you need to show us a little of what your trying to do, to me it sounds a little like machinery or something like that, are your objects linked together ?

i’m just trying to work out what might be the best workflow for you

Do you mean the Content Examples project from the Marketplace ? If so, which of it map do you mean exactly ?

Hi, Geodav. Please find some part of our scene here: Non skeletal animation example. Good example, actually. One logical object, consists of 5 peaces, one static, 4 animated. Animation is extremely simple, but made by mix of actual action tracks and some productive tools from Blender’s toolbox (constraints used; there are only two actually animated objects, other two become animated “automatically” solely due to constraints set on it), so simple but very interesting example which allows to test many aspects of Blender-to-UE animation workflow and related issues.

Please ignore the size of objects for now, in UE they will be very small, but this will not affect the animation issues (do not use global scale on export).

Thanks in advance!

Hi Alexey , had a quick look, the only way you’ll get that animation into ue4 is the parent all the parts on to 1 root/main piece then on select skeletal mesh

What do you mean by “… then on select skeletal mesh” ? Do you mean I need to enable “import skeletal mesh” option in the UE’s FBX import dialog ?

sorry i got called away and didn’t fix the post
on the import options
skeletal mesh
Import meshes in bone hierarchy

then hopefully it should work

i did try with your content but something went weird when i parented the small parts to the platform, so i left it.

if you require i can do a video for you

Thanks for clarification. We will try this, I will post the updates then. Please don’t bother about the video for now, but please accept my thanks for the offer.