Present: Brecht Van Lommel, Kévin Dietrich, Michael Kowalski, Sybren Stüvel
This is a summary of a video meeting about the direction of USD and Alembic support in Blender and Cycles.
Michael: wants to get features from the universal-scene-description
branch into master.
- For Blender 3.1: USD preview surface material export
- Nice-to-have for 3.1: Symmetrize camera export with import
- The remaining features in that branch can be ported in 3.2.
Kévin: has a bunch of new features, is preparing patches already:
- UI reorganisation, pretty simple & easy
- importing Alembic override layers
- support for creating geometry sets from both Alembic & USD importers
- an attribute remapping mechanism, including letting users choose which datatype is used and what the domain (mesh points vs. face-corners) should be.
- instancing support, loading instances as linked duplicates of objects
Sybren: asks about potential unification of Alembic and USD support in Cycles.
-
Brecht: Cyces & Blender will keep different implementations for Alembic, as Cycles can be used standalone as well.
-
When USD support is added to Cycles, it will use a similar approach as the current Alembic support.
Collection-based Import/Export (T68933): Michael is interested in spending time on this.
Actually working on this from the Blender side might be hard, as the people who know about it have busy schedules already. Technical discussions should include Bastien, discussions about priority should be had with Dalai.
Michael will discuss with Kévin to see how he implemented instancing for Alembic.
-
Brecht: Blender could have different approaches for instancing:
- linked duplicates are more natural for low number of instances
- instancing on a point cloud could work for of thousands+ points.
- Instancing a hierarchy of objects requires a collection.
- Kévin: instances can have different transforms, so may need different Transform Cache constraints.
Michael asks about the requirement to keep USD files locked, due to the nature of the current design for loading any animated data.
- Sybren: animated transforms could be loaded as animation curves. Reloading data from USD when that changes could be tricky.
- Brecht: library overrides could be used here, to override specific animation curves and reload the others.
It is agreed to have more regular meetings like this, to help moving in the same direction. The majority of discussions are still likely to happen on Blender Chat.