Announcement

Collapse
No announcement yet.

Blender 2.78 - Alembic - Unreal 4.13

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Blender 2.78 - Alembic - Unreal 4.13

    Hi,

    I am testing a workflow for rendering character animations in real time using Blender and Unreal with Alembic as exchenge format.
    Both Blender 2.78 and Unreal 4.13 are in beta phase and now support Alembic 1.6.

    My findings so far:

    - If animation is armature (bones) driven, you had better activate "Flatten Hierarchy" on Blender's Alembic exporter. Otherwise Unreal crashes.
    - [Great!] Unreal can import materials from Blender with correct names and its faces' assignments!!! Thanks’ to Alembic 1.6, I think.
    - Unreal imports well meshes and animations, as long as exported faces are tris or quads.
    - Models are imported 1/100 small, rotated (y-z up confusion) and mirrored in x-axis. (What a mess! )
    - Huge problems with normals. I think it is related to Unreal not liking non-triangulation on faces in .abc. Most of times it can be solved activating "Force one smoothing group per object" and "Recompute Normals".

    It is important to state that exporting FBX from Blender to Unreal is a piece of cake, so these issues are related to Alembic implementation in both programs so far.

    I hope we can improve on that because the partnership Blender-Unreal (both free) is the way to go.

    (Download Latest Builds: https://builder.blender.org/download/)


    Click image for larger version

Name:	011.jpg
Views:	1
Size:	141.3 KB
ID:	1192114

    Click image for larger version

Name:	012.jpg
Views:	1
Size:	232.1 KB
ID:	1192115

    Click image for larger version

Name:	013.jpg
Views:	1
Size:	224.3 KB
ID:	1192116

    Click image for larger version

Name:	014.jpg
Views:	1
Size:	230.7 KB
ID:	1192118


    Adriano
    Attached Files
    Last edited by adriano.ol; 08-21-2016, 11:12 AM.

    #2
    Regarding that normals issue. Which "Normal Import Method" did you choose at UE4 import? There was some change a few months ago and as far I remember "Compute Normals" with "Mikk Tspace" as the "Normal Generation Method" seems to be the default import setting now. Usually I get very bad results with "Mikk Tspace" while it works well if choose "Built in" instead or if I don't compute them at import at all but choose "Import Normals and Tangents" at UE4 import instead.

    Comment


      #3
      Regarding the scale issue. This is normal. Blender is 100X smaller than Unreal by default. You have to scale up by 100 before you export, or at export if there is an option. The rotation issue seems to be on Unreal side. I am also getting the same thing on a file coming from Maya. As to the normals. for me it works OK if I use recompute. But that is just one test case. Your issue might be more common if I were to try other meshes.

      In your case you might want to try applying the normal map for the mesh and see how it looks.

      On mine however. I don't see any animation in the file when importing Geo Cache. Maybe I don't know how to use it yet.

      Comment


        #4
        Originally posted by adriano.ol View Post
        Hi,

        I am testing a workflow for rendering character animations in real time using Blender and Unreal with Alembic as exchenge format.
        Both Blender 2.78 and Unreal 4.13 are in beta phase and now support Alembic 1.6.

        My findings so far:

        - If animation is armature (bones) driven, you had better activate "Flatten Hierarchy" on Blender's Alembic exporter. Otherwise Unreal crashes.
        - [Great!] Unreal can import materials from Blender with correct names and its faces' assignments!!! Thanks’ to Alembic 1.6, I think.
        - Unreal imports well meshes and animations, as long as exported faces are tris or quads.
        - Models are imported 1/100 small, rotated (y-z up confusion) and mirrored in x-axis. (What a mess! )
        - Huge problems with normals. I think it is related to Unreal not liking non-triangulation on faces in .abc. Most of times it can be solved activating "Force one smoothing group per object" and "Recompute Normals".

        It is important to state that exporting FBX from Blender to Unreal is a piece of cake, so these issues are related to Alembic implementation in both programs so far.

        I hope we can improve on that because the partnership Blender-Unreal (both free) is the way to go.

        (Download Latest Builds: https://builder.blender.org/download/)

        Adriano
        Also getting the normal issues similar to yours
        Hope this will be resolved soon, aslo busy setting up an animated short inside UE4 and also now hit the same problem. Not sure if the issue resides on Blender 2.78 Alembic exporter not quite conforming to industry standards yet, or on UE4 side.

        Comment


          #5
          Blender has Alembic export ?! Interesting! I would like to simulate physics (falling cubes) in Blender and then bring it to UE4. Is it doable ?

          Comment


            #6
            It's great that Blender 2.78 adds Alembic export. And thanks [MENTION=52016]adriano.ol[/MENTION] for testing it!
            It would be great if they'd fix all these issues for official 2.78. Do they know about them?

            Comment


              #7
              [MENTION=52016]adriano.ol[/MENTION]

              Did you happen to report this issue to Blender devs too (at their bug tracker) ? Could be an issue that requires solution from both parties.

              Comment


                #8
                There are a number of issues in the UE4 Alembic tools. I notice that my normals / lighting / smoothing / materials get busted when closing and reopening a project that previously had my Alembic file properly working (mostly).

                Comment


                  #9
                  Here's my finding this morning, in Blender when I make faces flat and not smooth and then export to Alembic, then on import I don't tick the recompute normals and don't get the messed up normals as per the first post of Adriano, but I don't get UV's however, the texture map of the character does not work on my end. When I smooth shade the mesh in Blender I also get the messed-up normals in UE4.

                  Comment


                    #10
                    Sounds like an issue with Blender/exporter and not UE4 per se.

                    Comment


                      #11
                      Hey there,

                      I can confirm the rotation, scaling, and mirroring problem. The scale was a little jarring because FBX will come in at the correct scale without needing to scale at export.

                      I did find that the smoothing groups I set in Blender were either not being exported or not being imported by Unreal 4.13. You can control the smoothing on import but even that didn't always have the result I expected.

                      Also found out that only 1 UV channel will be recognized by Unreal with 1 additional channel being generated for lightmaps. The UV was tricky to figure out too. If you don't "apply the rotation and scale" on the mesh in Blender, the mesh will import into Unreal with a generic UV. The result is similar to a "smart unwrap." If you add two UV channels and don't apply rotation and scale, Unreal will read the second channel as the main UV with the second being the one auto generated for lightmaps.

                      That was all while importing as a static mesh.

                      When I imported a skeletal animation, with the remaining two options, it seemed like a few frames were missing. Basically the loop gets a stutter where the FBX does not. Has anyone in here noticed something like that?

                      Also tested UCX primitives as a long shot which did not work hah.

                      Comment


                        #12
                        Hiya Adriano,

                        Would you be able to upload the Alembic file so I can take a look? In regards to the smoothing group / normal calculation check out the livestream from yesterday in which we explained the ins and outs of the Alembic importer! (https://www.twitch.tv/unrealengine/v/88268441)

                        Cheers,

                        Jurre

                        Comment


                          #13
                          Originally posted by EpicJurre View Post
                          Hiya Adriano,

                          Would you be able to upload the Alembic file so I can take a look? In regards to the smoothing group / normal calculation check out the livestream from yesterday in which we explained the ins and outs of the Alembic importer! (https://www.twitch.tv/unrealengine/v/88268441)

                          Cheers,

                          Jurre
                          Hi Jurre. Did you get an Alembic file from Adriano?

                          Comment


                            #14
                            Hello,
                            I have same problem with alembic from blender. I uploaded simple example with only moving cube. Click image for larger version

Name:	test.png
Views:	1
Size:	526.1 KB
ID:	1114935
                            Attached Files

                            Comment


                              #15
                              This Alembic Exporter from the Blender Octane Build might be worth testing as well: http://blenderabc.render.jp/

                              Comment

                              Working...
                              X