Alembic / USD #73363

Closed
opened 2020-01-24 16:40:59 +01:00 by Dalai Felinto · 29 comments

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: @DanielBystedt (Alembic) @Ton (USD)
Project leader: @dr.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,

{icon check-circle color=green} 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: ?

  • {icon check-circle color=green} Re-implementation of the exporter based on the USD exporter. D7664, Blender 2.90
  • {icon check-circle color=green} Include support for instances. b3759cc0d6, Blender 2.91
  • Support export of custom properties - #50725.

{icon check-circle color=green} 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 #68933 (Collections for Import/Export).

Milestone 5 - USD exporter feature extension
Time estimate: ?

  • The exporter part of #68933 (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: ?

  • The importer part of #68933 (Collections for Import/Export)
  • Hydra delegate, to directly pass data from USD to a render engine without intermediate conversion to Blender data.

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:

**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:** @DanielBystedt (Alembic) @Ton (USD) **Project leader:** @dr.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, **{icon check-circle color=green} 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: `?` * {icon check-circle color=green} Re-implementation of the exporter based on the USD exporter. [D7664](https://archive.blender.org/developer/D7664), *Blender 2.90* * {icon check-circle color=green} Include support for instances. b3759cc0d6, *Blender 2.91* * Support export of custom properties - #50725. **{icon check-circle color=green} Milestone 3 - Export / evaluate hidden objects *Done - Blender 2.91*** Time estimate: `?` * Dependency graph changes (or other approach) to handle hidden objects. [D8595](https://archive.blender.org/developer/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](https://wiki.blender.org/wiki/Source/Architecture/USD). The USD importer is likely to use the approach that is described in the 'Libraries and Overrides' section of #68933 (Collections for Import/Export). **Milestone 5 - USD exporter feature extension** Time estimate: `?` * The exporter part of #68933 (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: `?` * The importer part of #68933 (Collections for Import/Export) * Hydra delegate, to directly pass data from USD to a render engine without intermediate conversion to Blender data. **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**: * [Alembic official site ](https://www.alembic.io/) * [USD official site ](https://graphics.pixar.com/usd/) * [Alembic cache integration importing ](http://developer.blender.org/T69046) * [Original Alembic umbrella task ](http://developer.blender.org/T69058) * [Original USD umbrella task ](http://developer.blender.org/T72204)
Sybren A. Stüvel was assigned by Dalai Felinto 2020-01-24 16:40:59 +01:00
Author
Owner

Added subscribers: @rafaelmoco.lr, @dr.sybren, @Ton, @dfelinto

Added subscribers: @rafaelmoco.lr, @dr.sybren, @Ton, @dfelinto

Added subscriber: @AditiaA.Pratama

Added subscriber: @AditiaA.Pratama

Added subscriber: @Pipeliner

Added subscriber: @Pipeliner

Added subscriber: @PratyakshGaur

Added subscriber: @PratyakshGaur

Added subscriber: @USDZLover

Added subscriber: @USDZLover

Added subscriber: @karlisstigis

Added subscriber: @karlisstigis

Added subscriber: @ManuelAlbert

Added subscriber: @ManuelAlbert

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'

Added subscriber: @slumber

Added subscriber: @slumber

Added subscriber: @fx

Added subscriber: @fx

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?

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?

@fx This is not a support forum. Please visit https://www.blender.org/support/ to find support channels.

@fx This is not a support forum. Please visit https://www.blender.org/support/ to find support channels.

Added subscriber: @YegorSmirnov

Added subscriber: @YegorSmirnov

Added subscriber: @evantryan

Added subscriber: @evantryan

Added subscriber: @MattCurtis

Added subscriber: @MattCurtis

Added subscriber: @MartenZander

Added subscriber: @MartenZander

Added subscriber: @frameshift

Added subscriber: @frameshift

Added subscriber: @Memento

Added subscriber: @Memento

Added subscriber: @afleith

Added subscriber: @afleith

Added subscriber: @LourCloud

Added subscriber: @LourCloud

Added subscriber: @sharaths21312

Added subscriber: @sharaths21312

Added subscriber: @DanielBystedt

Added subscriber: @DanielBystedt

Added subscriber: @plboily

Added subscriber: @plboily
Member

Added subscriber: @jta

Added subscriber: @jta

Added subscriber: @nicelife

Added subscriber: @nicelife

Added subscriber: @JasonSchleifer

Added subscriber: @JasonSchleifer

Added subscriber: @zrp

Added subscriber: @zrp

Added subscriber: @Michael-Heberlein

Added subscriber: @Michael-Heberlein
Philipp Oeser removed the
Interest
Pipeline, Assets & IO
label 2023-02-10 08:54:20 +01:00

I'll close this task, as it is heavily outdated. Also I'm no longer part of the USD development team.

I'll close this task, as it is heavily outdated. Also I'm no longer part of the USD development team.
Blender Bot added
Status
Archived
and removed
Status
Confirmed
labels 2024-03-21 09:37:14 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
26 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#73363
No description provided.