Extensions/Pixar's OpenUSD
ComfyUI Extension

Pixar's OpenUSD

Pixar's OpenUSD pipeline integration for ComfyUI. Natively compose and render 3D scenes within your node workflows.

By cjhosken·Created 3 months ago·Updated 2 months ago· 9
cjhosken/ComfyUI-OpenUSD
Nodes29
On cloudLocal install
Category3d/usd/composition, 3d/usd/scene
Stars9
Updated2 months ago

Nodes (29)

Add USD Reference / Payload

Pull an entire USD file into your scene with one node

3d/usd/composition
Add USD Specializes

The composition arc nobody talks about

3d/usd/composition
Sublayer USD

Stack files like a layer stack, strongest on top

3d/usd/composition
Add USD Variant

Switch between versions of an asset without swapping files

3d/usd/composition
Apply USD Material

Give a generated mesh a real PBR material, textures included

3d/usd/scene
Configure USD Prim

The metadata knobs that decide what renders

3d/usd/prim
Configure USD Stage

Fix a stage's up axis and units before it lands sideways in Blender

3d/usd/composition
Convert USD

The bridge from generated 3D straight into OpenUSD

3d/usd/convert
Create USD Camera

Put a real camera in your USD scene so renders have a viewpoint

3d/usd/scene
Create USD Color

Hex picker in, typed USD color out

3d/usd/type
Create USD Light

Light the scene so your USD stage isn't pitch black

3d/usd/scene
Create USD Matrix

Build a transform from translation, rotation, scale

3d/usd/type
Create USD Quaternion

Rotations as (w,x,y,z), not Euler angles

3d/usd/type
Create USD Stage

The blank canvas every USD workflow in this pack starts with

3d/usd/composition
Create USD Token (String)

The string type node that knows USD's rules

3d/usd/type
Create USD Vec2

A typed 2D value for USD attributes

3d/usd/type
Create USD Vec3

The type node behind every 3D value in the pack

3d/usd/type
Create USD Vec4

A typed 4-float value, colors included

3d/usd/type
Get USD Attribute/Primvar

Read any attribute or primvar off a prim, as a value you can use

3d/usd/prim
Layer Break USD

Freeze the fight between your composition arcs

3d/usd/composition
Load USD

Where every OpenUSD workflow in ComfyUI starts

3d/usd/io
Save USD

Get your stage off the canvas and onto disk

3d/usd/io
Set USD Attribute/Primvar

Write real USD data from the graph

3d/usd/prim
Set USD Prim Display Color

Tint a mesh without touching a material graph

3d/usd/prim
USD Viewer

Actually see the stage you're editing

3d/usd/view
Text to USD

Paste USDA source code straight into your graph

3d/usd/convert
Transform USD Prim

Move, rotate, scale — and don't trip the footgun

3d/usd/scene
USD Python Script

The escape hatch when no node does what you need

3d/usd/utils
USD to Text

Read your stage as source code

3d/usd/convert
Readme

ComfyUI-USD

<p align="center"> <img src="./banner.jpg" alt="ComfyUI-USD Banner" width="100%"> </p> <p align="center"> <img src="./icon.png" alt="USD Logo" width="80" height="80"> <br> <strong>An OpenUSD integration for ComfyUI</strong> </p> <p align="center"> <a href="#features--nodes">Features</a> • <a href="#node-reference">Node Reference</a> • <a href="#installation--dependencies">Installation</a> • <a href="#workflows">Workflows</a> </p>

Bring the power of Pixar's Universal Scene Description (OpenUSD) directly into your ComfyUI node canvas. This extension allows you to seamlessly convert, edit, and visualize 3D assets entirely in pure Python, bypassing the need for heavy external DCC (Digital Content Creation) software.

🚀 Key Capabilities

  • Pure Python Architecture: Convert standard .gltf/.glb files to .usd, .usda, .usdc, or .usdz formats cleanly.
  • Live USDA Text Editing: Inspect and manipulate ASCII USD code directly within a native ComfyUI web interface widget.
  • Interactive 3D Viewport: Preview your USD assets on your canvas using a fast, hardware-accelerated local 3D viewer.

Installation & Dependencies

This plugin requires a Python environment bundled with Pixar's usd-core, usd2gltf, and trimesh.

1. Clone the Node

Navigate to your ComfyUI installation and clone this repository into your custom_nodes directory:

cd /path/to/ComfyUI/custom_nodes
git clone [https://github.com/your-username/ComfyUI-USD](https://github.com/your-username/ComfyUI-USD)