Page MenuHome

Alembic / USD
Confirmed, NormalPublicDESIGN

Authored By
Dalai Felinto (dfelinto)
Jan 24 2020, 4:40 PM
Tokens
"Love" token, awarded by nunoconceicao."Yellow Medal" token, awarded by 123ertyy."Love" token, awarded by martinium."Love" token, awarded by silex."Love" token, awarded by Shimoon."Burninate" token, awarded by wahooney."Mountain of Wealth" token, awarded by melmass."Love" token, awarded by Raimund58."Love" token, awarded by Lour."Love" token, awarded by Pipeliner."Burninate" token, awarded by Dir-Surya."Love" token, awarded by slumber."Love" token, awarded by Yegor."Love" token, awarded by zinar."Love" token, awarded by wilBr.

Description

Status: Milestone 1 and 3 are done. Project needs plans / tasks and commissioners and to clear up partners (Tangent? Epic?) involvement. Particularly to define the USD importer scope use cases and priorities.


Team

Commissioner: @Daniel Bystedt (dbystedt) (Alembic) @Ton Roosendaal (ton) (USD)
Project leader: @Sybren A. Stüvel (sybren)
Project members: ?

Description

Big picture: Feature parity with other software.

Use cases: ?

Design: ?

Engineer plan:

  • Unifying cache read/write system for Alembic and USD,

Milestone 1 - Basic USD Exporter Done - Blender 2.82

  • Animated meshes, viewport material (diffuse, metalicness and roughness), animated transforms, perspective camera, most lights (with some properties animated).
  • Skeletal animation or non-mesh geometry is not part of the exporter.

Milestone 2 - Alembic exporter refactoring
Time estimate: ?

  • Re-implementation of the exporter based on the USD exporter. D7664, Blender 2.90
  • Include support for instances. rBb3759cc0d67e, Blender 2.91
  • Support export of custom properties - T50725.

Milestone 3 - Export / evaluate hidden objects Done - Blender 2.91
Time estimate: ?

  • Dependency graph changes (or other approach) to handle hidden objects. D8595.

Milestone 4 - USD importer
Time estimate: ?

The goals for this milestone are:

  • Lift limitations of the current import system. The most important current limitations are:
    • Only supports importing meshes and object/bone transforms (no properties like camera focus distance, no custom properties).
    • There is no way to update the Blend file based on changes in the imported files (objects added to the USD file are ignored by Blender, objects that are removed cause warnings).
  • Implement a USD importer that is on par with the current USD exporter.

The USD importer is likely to use the approach that is described in the 'Libraries and Overrides' section of T68933: Collections for Import/Export.

Milestone 5 - USD exporter feature extension
Time estimate: ?

  • The exporter part of T68933: Collections for Import/Export
  • Possibly skeletal animation (probably limited to a subset of Blender's features), i.e. export static mesh + animated armature.

Milestone 6 - USD importer feature extension
Time estimate: ?

Milestone 7 - Alembic importer rewrite
Time estimate: ?

  • Rewrite the Alembic importer to use the same approach as the USD importer.
  • Support different kinds of data-blocks (e.g., curves)
  • Support different kinds of properties (e.g. animated camera parameters)
  • Support importing custom properties.

Dependencies

  • Milestone 1 - Basic USD Exporter: Done - Blender 2.82
  • Milestone 2 - Alembic exporter refactoring: Depends on Milestone 1.
  • Milestone 3 - Export / evaluate hidden objects: Requires no other milestone.
  • Milestone 4 - USD importer: Requires no other milestone.
  • Milestone 5 - USD exporter feature extension: Depends on Milestone 1.
  • Milestone 6 - USD importer feature extension: Depends on Milestone 4.
  • Milestone 7 - Alembic importer rewrite: Depends on Milestone 2, 3, and 4.

Relevant links:

Event Timeline

Campbell Barton (campbellbarton) changed the task status from Needs Triage to Confirmed.Feb 12 2020, 8:29 AM

Hi, the release notes for 2.82 says that USD export is done. But I can not find it on the export menu. Can you tell me how to export to USD?

@feng xie (fengfayfay) This is not a support forum. Please visit https://www.blender.org/support/ to find support channels.