Page MenuHome

Alembic integration improvements
Confirmed, NormalPublicDESIGN

Description

Related Objects

StatusSubtypeAssignedTask
ConfirmedDESIGNSybren A. Stüvel (sybren)
ConfirmedTO DOKévin Dietrich (kevindietrich)
ConfirmedTO DOSybren A. Stüvel (sybren)
ConfirmedTO DOSybren A. Stüvel (sybren)
ConfirmedTO DOSybren A. Stüvel (sybren)
InvalidKévin Dietrich (kevindietrich)
InvalidDESIGNLukas Toenne (lukastoenne)
InvalidSybren A. Stüvel (sybren)
ConfirmedDESIGNSybren A. Stüvel (sybren)
ConfirmedTO DOSybren A. Stüvel (sybren)
ResolvedSybren A. Stüvel (sybren)
ConfirmedKNOWN ISSUENone
ResolvedSybren A. Stüvel (sybren)
ConfirmedTO DONone
ConfirmedTO DOSybren A. Stüvel (sybren)
ConfirmedDESIGNNone

Event Timeline

Sybren A. Stüvel (sybren) lowered the priority of this task from 90 to Normal.Aug 22 2019, 5:57 PM
Sybren A. Stüvel (sybren) created this task.

Hi Sybren,

I'm using alembic every day so many thanks for all your work and effort.

What I've noticed is that collections are ignored while exporting (flattened out). I think including/supporting collections might be a nice (and probably quick) improvement in order to keep the same hierarchy in other packages. I'm currently using a custom export operator, converting all the collections to empties before exporting the scene to alembic, which essentially is faking a group but is in fact just a quick and dirty workaround. Exporting heavy scenes just takes a few seconds longer so there is no real issue by that. However, in case there is any chance supporting groups/collections by default, would be a nice of course. In case you support that idea and you think I can help on that, providing or testing some files, just let me know. What do you think?

Thanks & Cheers,
Christian

We're thinking of ways of including collections into the exported hierarchies, both for USD and Alembic, but it's not an active task at the moment. It's unfortunately not a quick thing to do, because:

  1. Objects can be in multiple collections at once, and with different visibility states.
  2. Collections can be instanced into the scene multiple times.
  3. Empties can instance random subsets from a collection.
  4. The parent/child hierarchy of objects in the scene is separate from the collection hierarchy, and thus collection boundaries can cross parent/child boundaries.

Because of the above points, there is no clear one-to-one mapping that will always work. The USD exporter currently supports case 2. from the above list, and properly handles cases where an object in an instanced collection has a parent outside that collection. I think that it's best to first get the USD exporter into master, then alter the Alembic exporter to use the improvements I made for USD, and then we can improve the way we handle collections.

Hey Sybren,

many thanks for that explanation, makes sense. Just thought, that's an easy thing to do and would improve it drastically consistency wise...

Thanks again,
Christian

Sybren A. Stüvel (sybren) changed the status of subtask T54734: Alembic Import does not respect remap relative from Unknown Status to Unknown Status.Aug 23 2019, 5:17 PM
Sybren A. Stüvel (sybren) changed the status of subtask T55403: Alembic: export of animated child hairs from Unknown Status to Resolved.Sep 19 2019, 5:02 PM

HI Sybren.

Great to see this task! :D

Please don't forget about velocities or motion blur for fluid meshes (or variable vertex count meshes), right now we cannot render motion blur for fluids baked on alembic format.

Cheers.

This comment was removed by Sybren A. Stüvel (sybren).

@Andrew (ajohnson223) Please don't comment here to report issues or discuss problems; if you have found a bug, please file a bug report. I have removed your comment to keep the tracker clean; in case you don't agree, let me know in a private message.

This comment was removed by Sybren A. Stüvel (sybren).