4.13 Alembic feedback

We were extremely excited to finally see Alembic support in Unreal engine. Previously we had written our own custom Alembic importer but it was always a bit buggy and were looking forward to this.

Sadly though at this time, I have tried importing over a dozen different Alembic files and every single one of them has crashed the Unreal editor upon import. I select the file, the import dialog opens up and the list of meshes in the alembic looks correct. I leave everything at the default and hit import, and it crashes.

As best I can tell it is crashing in FStaticMeshRenderData::Cache. Specifically, when it tries to build the distance field data I think. I’m going to try turning off distance field stuff and see if that fixes it or not. Have not done that yet.

Ok so did some more tests with the “Generate Mesh Distance Fields” option disabled on the project and now all the alembic files do in fact load properly. With it enabled, every import will crash the editor. With it off they import correctly.

Now that I can get the models imported, here are my first look thoughts:

  1. Model orientation. The importer really needs options to transform the mesh on import. Models exported from Maya for example will come in on their sides. We had hardocded this transform into our own importer, but really this should be something in the import options that can be configured.
  2. The option to collapse the mesh or not doesn’t appear to make any difference?

EDIT #2 was user error. I was expecting something different.

This please. Also have you tried to package and build your project with alembic files in there? We were getting crashes on load of the successful build but we were also packaging with substance and couldn’t quite nail down what the issue was. Eventually we got it to package with the substance but removed the alembic files.

I was really waiting for Alembic to import in UE4 the complex clothes simulation from Marvelous Designer (not for games, for cinematic and fast rendering). And it basically works. But when I import, the dress mesh turned in an crazy way )) Right becomes left, bottom - top. So I can’t attach clothing to my character, because in the animation they are moving in different directions! If with inverted top and bottom I am still able to do something, with inverted symmetry - nothing. I tried different methods: direct export from Marvelous Designer, export first in 3ds Max (geometry + point cache) and then Alembic file from Max to UE4, the result was the same. Most interestingly, when I import the static mesh (single frame) dress similarly flipped inside out. Maybe I’m doing something wrong?

No you aren’t doing it wrong. The problem is Unreal and most DCCs use a different coordinate system. That means that what each tools considers for example UP, is different. When importing FBX this problem doesn’t occur because FBX as a format stores the source coordinate system and provides tools to convert seamlessley. Alembic does not, so it is up to the importer (in this case Unreal) to provide options for doing that transformation, which Epic have not currently provided.

I fix that “issue” simply modifying X-Scale to -1. Just as you do in Maya for mirror objects.

But, BUT, i have found other big problem:

1- Import “geometry cache ( experimental )”
2 - Play simulate, pause, and play everyframe.
3 - Animation plays: in frames 1 - 4 - 7 - 10 - etc.

I have tried all kind imports and there`s no way cache play frame by frame!

Did you noticed this problem?

To address the aforementioned issue with geometry coming in the wrong way, x-axis flipped or incorrect UVs, we have added new conversion options to the import process. This will allow you to pick a preset, Maya or 3DS Max, or define the conversion matrices / UV channel flipping yourself (Unreal Engine Issues and Bug Tracker (UE-35510)). Our aim is to continue adding presets for DCC packages but for that we will need your help identifying issues so we can test and make sure we add the correct conversion preset. The distance fields issue has also been resolved (Unreal Engine Issues and Bug Tracker (UE-36059)), this all will be in 4.14 :slight_smile:



Is there no chance of this getting out in a 4.13 patch? If the fixes have already been done can we get commits to apply to 4.13.1?

So, I tried alembic import in new “4.14.0 Preview 1” again in combination: skeletal-mesh+animation and alembic - clothes with marvelous simulation. Import works fine. There is only one problem I don’t know how to solve. I have a small offset between the model and the clothes during animation. Like clothes, slightly behind the model in time. Before, when I used skeletal-mesh models + skeletal-mesh clothes, I had the same problem, but I solved it using blueprint (construction script - “SetMasterPoseComponent”, found this solution on YouTube) but with alembic this trick is not working. Is there any method or trick to obtain synchronization between alembic-clothes and animated skeletal mesh? I tried to link clothes as alembic-geo-cache to skeletal mesh and I’ve got the exact same offset when I played animation. I think that the problem is not alembic, the problem is how to make alembic and skeletal mesh good friends ))

I had exactly the same problem.
It seems there`s no solution at sight.

So if you are working with clothes, i recomend you to go to Apex Cloth. For collision use Capsules and A-Collision Method. Works very well and it`s realtime.
This was a solution for me.

Thank you. I’ll try it. For my purposes I don’t need the simulation in real time, but obviously, alembic is not a solution for clothes simulation yet… except alembic-import clothes together with the avatar as a whole. Then there is no problem with synchronization. But it’s a bit silly )) and not rational.

Hi, first of all many thanks for the alembic support, it was much needed. I was playing with the alembic import in Unreal 4.13 and came across few issues.

Firstly, when importing as a skeleton mesh in alembic, the import was successful. It is when I use it in the level I found that after playing few frames it is somewhat giving visual issues. I mean it is there in the level but not visible. When I turn camera sideways its visible to some point but not always.

Secondly, when importing as Geo cache in alembic, the import was smooth. I put some materials into it. Then I have animated the material opacity in matinee which is smooth again. But after closing and reopening UE4, the material animation is gone. I noticed that at first while importing I had the default material in the mesh which is missing after reopening UE4. Thus it is loosing the setup I did.

Have a look into it, I may have missed something. If these can be fixed, it would be of great help to us.

Thanks again…

Hi !

I noticed a visual issue when I import an alembic animated mesh with TemporalAA on, not sure why and it took me a while to figure out it was AA related but it is quite blurry when the animation is played. The others AA method seems fine but I’d like to use TempAA in my project so I’m a bit worried. So, if anyone have a guess about this issue or is able to tell me if it’s going to be fixed, I would really appreciate it.
I’m on 4.14.3 by the way, but I will try it shortly on 4.15 when it will be fully released.