Search Unity

  1. Tune in to get all the latest Unity news live from Berlin on June 19, 6pm CEST. Set up a YouTube reminder!
    Dismiss Notice
  2. Unity 2018.1 has arrived! Read about it here
    Dismiss Notice
  3. Scriptable Render Pipeline improvements, Texture Mipmap Streaming, and more! Check out what we have in store for you in the 2018.2 Beta.
    Dismiss Notice
  4. Improve your Unity skills with a certified instructor in a private, interactive classroom. Learn more.
    Dismiss Notice
  5. ARCore is out of developer preview! Read about it here.
    Dismiss Notice
  6. Magic Leap’s Lumin SDK Technical Preview for Unity lets you get started creating content for Magic Leap One™. Find more information on our blog!
    Dismiss Notice
  7. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice

Alembic support

Discussion in 'General Discussion' started by 3d_Artist1987, Oct 22, 2013.

  1. 3d_Artist1987

    3d_Artist1987

    Joined:
    Jul 9, 2012
    Posts:
    584
    Hi,

    Now Alembic is very popular format in cg world,any news for unity support Alembic?:D

    Dev
     
  2. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,518
    I could see where alembic may be good for things like cut-scenes... but as it's essentially storing permutations of entire scenes I'm not sure how it would work with things like animation retargeting.
     
  3. Dustin-Horne

    Dustin-Horne

    Joined:
    Apr 4, 2013
    Posts:
    4,518
    Also... I'm not 100% how it would fit in with Unity's architecture. The use of prefabs, game objects, etc. all seems to be based around an object-graph structure that Alembic is not meant to handle.
     
  4. Pix10

    Pix10

    Joined:
    Jul 21, 2012
    Posts:
    843
    Alembic's good in VFX for data transport and lazy rendering. It's *not* good for realtime applications.

    You can get similar results by exporting baked keyframes from your favourite 3D app - we've done this more than a few times ourselves, but it's only suitable for niché special case scenarios, and I certainly don't recommend it if you have limited RAM or are in any way file size concious.
     
  5. Pix10

    Pix10

    Joined:
    Jul 21, 2012
    Posts:
    843
    Last edited: Oct 22, 2013
  6. agudmund

    agudmund

    Joined:
    May 6, 2013
    Posts:
    9
    The Alembic GPU cache real time response time is phenomenal, even within 3D asset creation softwares (Houdini,Maya,etc) colouring limitations which can be overstepped with intuitive overlays are there but getting super high detail geometry to animate in real time is quite plausible using Alembic if the cache is configured aptly.
     
  7. sukotto1

    sukotto1

    Joined:
    Nov 6, 2014
    Posts:
    3
    Late to this party but: Alembic is a very generic data container file that grew out of GTO and the limitations VFX people found there. It's used essentially a caching file format for animation data, typically geometry files and deforming geometry sequences. It handles vertex delta frame offsets, de-duplication (transform instancing), particles, cameras, lights, etc. But it's not really meant as an animation scene file exchange format with key frame curves, etc.
    USD from Pixar - is their Universal Scene Description - a noSQL-ish database that attempts to represent all scene assets in a show in a way that can be used to by pipeline transport mechanisms to feed things like Katana render sessions. It is also not a scene file exchange format.
    Basically Alembic would be used to describe the cached, deformed geometry that would be referenced in a USD database which would then drive a Katana session to create the render data to send to the render farm.
    I think the biggest thing Alembic would bring to Unity is a way to describe arbitrarily complex geometry in a time referenceable way - blend shapes on steroids, and geometry caches that change topology.
     
    Elringus and Benjamin.chevalier like this.
  8. qoobit

    qoobit

    Joined:
    Aug 19, 2014
    Posts:
    33
    Alembic was used in the recent Adam demo. It's currently in alpha, not sure if it's no the roadmap or not but it should be coming sooner or later since it will make their sequencer functions much more robust.
     
  9. Ippokratis

    Ippokratis

    Joined:
    Oct 13, 2008
    Posts:
    1,484
    trelobyte likes this.
  10. johngemstone

    johngemstone

    Joined:
    Aug 2, 2016
    Posts:
    6
    Hey all, new to unity but have a moderate experience with 3d apps in general. I've used this AlembicImporter and it works perfect, but the only problem is that the UV data seems to be missing! So I cant texture. Has anyone had any experience with the extension, or know any other file caching extensions for unity?

    EDIT: I ran some tests, it was actually a problem with my exporting process rather than the extension. Works very well, highly recommended! Cheers
     
    Last edited: Aug 2, 2016
    trelobyte likes this.
  11. trelobyte

    trelobyte

    Joined:
    Nov 17, 2010
    Posts:
    53
    johngemstone could you please explain your setup unity 5.4 crashes when i import an alembic file here
    thanks
     
  12. johngemstone

    johngemstone

    Joined:
    Aug 2, 2016
    Posts:
    6
    Make sure you are putting your .abc files into "Assets\StreamingAssets\AlembicData" before going to Assets>UTJ>Import Alembic to import the file.



    >>> Would anyone know why the abc wont animate once compiled into an android app? Works perfect in the editor..
     
    Last edited: Aug 6, 2016
  13. trelobyte

    trelobyte

    Joined:
    Nov 17, 2010
    Posts:
    53
    johngemstone thanks so much !!!
    it works :)
    have not tested on a device yet, I will post results when i do
     
  14. johngemstone

    johngemstone

    Joined:
    Aug 2, 2016
    Posts:
    6
    Nice one, glad to hear you got it working ok!
     
  15. softviz

    softviz

    Joined:
    Jan 4, 2016
    Posts:
    1
    Hi,

    Has anyone tried their Alembic Material importer?
    Can't find how to use it in their manual.
     
  16. Staus

    Staus

    Joined:
    Jul 7, 2014
    Posts:
    3
    I can't get it to run on android either. It seems to be missing a .dll file.
    This is the error I get:
    Code (CSharp):
    1. DllNotFoundException: usdiRT
    2.     UTJ.usdi.InitializePluginPass1()
    3.     UTJ.UsdStream.Awake()
    This error is for his latest plugin here (Supports both USD and Alembic):
    https://github.com/unity3d-jp/USDForUnity
     
  17. wsz

    wsz

    Joined:
    Oct 20, 2012
    Posts:
    19
    Hello guys,
    Where Can I set loop mode using this plugin?
     
  18. 4NDDYYYY

    4NDDYYYY

    Joined:
    Jan 28, 2016
    Posts:
    13
    In the AlembicStreamPlayer Script attached to your GameObject, under Playback Settings > Cycle > Loop (option)
     
  19. olli_vrcoaster

    olli_vrcoaster

    Joined:
    Sep 1, 2017
    Posts:
    3
    can you get it to work with textures ? Seems like it doesnt import uv's.
     
  20. kteitsort

    kteitsort

    Joined:
    Apr 30, 2014
    Posts:
    3
    can the Hololen unity process Alembic files?
     
  21. danroby

    danroby

    Joined:
    Jan 16, 2013
    Posts:
    1
    Hi,
    on Android platform the animation is not working. I get the errors below:

    06-15 00:28:12.586: E/Unity(24197): (Filename: Line: -1)
    06-15 00:28:12.587: E/Unity(24197): DllNotFoundException: abci
    06-15 00:28:12.587: E/Unity(24197): at (wrapper managed-to-native) UTJ.Alembic.aiContext:aiContextCreate (int)
    06-15 00:28:12.587: E/Unity(24197): at UTJ.Alembic.aiContext.Create (Int32 uid) [0x00000] in <filename unknown>:0
    06-15 00:28:12.587: E/Unity(24197): at UTJ.Alembic.AlembicStream.AbcLoad (Boolean createMissingNodes) [0x00000] in <filename unknown>:0
    06-15 00:28:12.587: E/Unity(24197): at UTJ.Alembic.AlembicStreamPlayer.LoadStream (Boolean createMissingNodes) [0x00000] in <filename unknown>:0
    06-15 00:28:12.587: E/Unity(24197): at UTJ.Alembic.AlembicStreamPlayer.Update () [0x00000] in <filename unknown>:0
    06-15 00:28:12.587: E/Unity(24197): at UTJ.Alembic.AlembicStreamPlayer.LateUpdate () [0x00000] in <filename unknown>:0
    06-15 00:28:12.587: E/Unity(24197):
    06-15 00:28:12.587: E/Unity(24197): (Filename: Line: -1)
    06-15 00:28:12.628: E/Unity(24197): DllNotFoundException: abci
    06-15 00:28:12.628: E/Unity(24197): at (wrapper managed-to-native) UTJ.Alembic.aiContext:aiContextCreate (int)

    All works fine inside the Unity Editor.
    Where am I doing wrong?
    Thanks for your help