How would alembic change blender ?

In several threads i now see Alembic support is been worked on.
And i wondered what it means, and how it would impact the average blender user.
So i looked at : http://www.alembic.io/

And read from there:

What is Alembic….

  • …Is a data representation scheme for storing computer graphics scenes
  • …Distills the results of artist disciplines for handoff to other artists in other disciplines
  • …Is focused on the greatest common divisor between applications, the ‘periodic table of cg primitives’
  • …Is extensible to support new workflows and new tools

Alembic Is Not…

  • …A dependency graph, nor a procedural data transformation tool
  • …A replacement for native application scene file formats
  • …An asset management application
  • …A general rigging storage solution

Alembic Would Be Used…

  • …To bake the results of an animated scene for hand-off to lighting & rendering
  • …To hand off an animated creature for cloth or flesh simulation
  • …To store the results of a cloth or flesh simulation for use in lighting & rendering
  • …To hand off animated geometry to a physical simulation engine
  • …To store the results of a physical simulation engine for use in lighting & rendering

Alembic Would Not Be Used…

  • …To transport complex procedural animation rigs between different applications
  • …To make lossless round trips out of and into the same computation context
  • …To construct complex networks of procedural tools

Am i correct or wrong…
It would be another importer exporter (like DFX etc), and / or, an internally used data structure.
With or without it, it wouldnt change what is possible if one only uses Blender to generate things (no import/export).
As we can allready do cloth simulations.
And as far as i know there are no flesh simulations planned yet.
Although some addons come close to muscle simulation
The real thing is real bone models (skull etc)+fat+skin etc… only a few people tried trhat using blender.

Or does this has to do with future development and the bullit engine (blender 2.8) ?.

I’m just curious trying to understand why blender is heading in this direction.

The first noticeable thing (aside from handing off to other apps) is that Cycles (and potentially other renderers) can read the Alembic cache directly, without loading into Blender and translating it first. So things like cloth sims or cached animation could sync to Cycles faster and use less RAM. You can also use it to store low-res proxy geometry in the viewport, while Cycles directly loads the full-detail mesh on its own. Again, skipping the slow and memory-hungry “load into Blender then sync over” step.

If you only use Blender, it probably won’t change a whole lot for you as a user (unless someone takes a stab at tools like Chronosculpt cache editing within Blender itself :D). If you use other software for animation, sims, or rendering, it could completely change your workflow.

I’ve really been looking forward to seeing more activity on the Alembic development, mostly because it would mean being able to export baked animated scenes to other 3D applications and to rendering / look-dev applications. Being a Blender user is pretty limiting right now when it comes to using a look-dev app for rendering animation.

Precisely that.

I can see why it would be a priority for Project Gooseberry then, they have scenes that are going to have a lot of hair and VFx work and Sergey’s been declaring war on memory usage and trying to get it down as much as he can before the actual render occurs.

I’ve had scene tests that go beyond the 16 gigs of RAM in my machine despite the actual render using say 8 gigs, it would be nice to actually get close to renders using all 16 gigs without going into swap beforehand. This was also pretty bad when I had my old machine as my 2 gigs of usable RAM maxed out on the scene preparation when the amount used by rendering approached just 600 megs.

What kind of other software should we think of then.
Do you know some opensource prorgrams ?.

( opensource as i dont doubt autocad would support it, but developing cycles for them seams a bit strange).

Houdini, Maya, Katana, the usual stuff. Some of us either can’t use all-Blender pipelines, or just plain don’t want to.

Basically anywhere you can do sims or cache editing. Blender is pretty late to the Alembic party. I’m pumped to be able to tie Chronosculpt into my Blender workflow now.

As others have mentioned, Alembic is vital to get Blender into more pipelines. It will be useful to import and export animated caches to/from Blender and will really open it up to playing nicely with other software. I have had some limited success using the mdd format so I am excited to finally start using Blender more with other applications!

I noticed that Lukas has some preliminary support in the Cycles standalone version and I can really see Cycles getting more usage outside of the Blender world when it is fully supported.

Ooh so we can then import alembic sequences from RealFlow without a hitch? I wasn’t having much success with the real flow .bin importer add-on.

Yes. Or at least, that’s the idea.

Awesome, music to my ears.

At least initially, don’t expect to be able to use Alembic as it’s most commonly used in other pipelines, i.e. for data transport between applications. Quoting a recent post on the developers list [1] addressing this question.

[1] http://lists.blender.org/pipermail/bf-committers/2015-March/045212.html

Does anyone know how long it will be the until alembic import function will be implemented?

As always with blender development, when it’s done. :slight_smile: