create-proxy

Generate USD proxy siblings with decimated meshes or bounding boxes and wire render/proxy purposes.

31|4|Updated May 21, 2026
One-click install
npx skills add https://github.com/NVIDIA-Omniverse/usd-optimize --skill create-proxy
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: create-proxy
Source: https://github.com/NVIDIA-Omniverse/usd-optimize/tree/main/.agents/skills/create-proxy
Command: npx skills add https://github.com/NVIDIA-Omniverse/usd-optimize --skill create-proxy

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Create a low-detail proxy mesh sibling for a high-resolution USD subtree so downstream tools can swap render vs. proxy representations efficiently.

Core Features & Use Cases

  • Proxy generation with three strategies: decimate (merge + Topology Simplification), boundingBoxWhole (single AABB), or boundingBoxPerMesh (AABB per leaf mesh).
  • USD purpose wiring: tags the source with render and the proxy with proxy so Hydra/usdview and DCC pipelines pick the right representation automatically.
  • Optional variant set swapping: author a displayPurpose variant set to flip which representation renders without duplicating assets.
  • Pre-flight safety and verification guidance: includes validation points for missing prims/meshes, existing proxy collisions, edit-target layering issues, and post-run checks (existence, purpose, vertex-count sanity).

Quick Start

Ask your agent to generate a decimated proxy at /World/Asset_proxy and set source purpose to render and proxy purpose to proxy by running the create-proxy skill with sourcePrimPath set to /World/Asset.

Frequently Asked Questions about create-proxy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate a low-detail USD proxy mesh for faster viewport interaction?

Generate a USD proxy sibling for a high-resolution prim hierarchy using decimated meshes or bounding-box stand-ins, wiring USD purpose tags so Hydra and usdview automatically select the correct representation.

What is the best way to set up render and proxy purpose swapping in a USD stage?

Set up render and proxy purpose swapping by tagging the source prim with the render purpose and the generated proxy sibling with the proxy purpose, optionally authoring a displayPurpose variant set to flip representations without duplicating assets.

Can I use bounding boxes instead of decimated meshes for USD LOD stand-ins?

Yes, you can use deterministic bounding-box stand-ins by selecting either a single axis-aligned bounding box for the entire hierarchy or an individual AABB per leaf mesh to serve as LOD stand-ins.

How do I avoid edit target and composition arc conflicts when authoring USD proxy geometry?

Avoid edit target and composition arc conflicts by following pre-flight validation checks for missing meshes, existing proxy collisions at the predictable proxy path, and correct edit-target layering before authoring the proxy geometry.

Does USD proxy generation replace the original high-resolution mesh data?

No, USD proxy generation does not replace the original mesh data; it creates a sibling prim at a predictable path and tags it with the proxy purpose while setting the source to render, keeping both representations available for swapping.