Universal Scene Description

Universal Scene Description (USD) について



Universal Scene Description (USD) は、ピクサー・アニメーション・スタジオが開発したオープンソースの3Dシーン記述形式および関連ツール群です。USDは、複雑な3Dシーンデータを効率的に記述、保存、交換するための共通基盤を提供し、映画制作、ゲーム開発、AR/VRなど、幅広い分野で利用されています。

USDの基本構造



USDは、シーンを構成する様々な要素(ジオメトリ、ライト、マテリアル、アニメーションなど)を階層的に表現するシーングラフ形式を採用しています。これにより、複雑なシーンでも効率的な管理と操作が可能になります。

主な特徴:

モダンなシーングラフ形式: アセットのバリアント、外部参照、オーバーライドなど、高度な機能に対応。
多様な形式: テキスト形式 (usda)、バイナリ形式 (usdc)、アーカイブ形式 (usdz) が存在。
スキーマによる拡張性: USDファイルに含める情報の種類はスキーマで定義され、必要に応じて拡張可能。

主なスキーマ:

ジオメトリ (UsdGeom)
ライト (UsdLux)
シェーディング / マテリアル (UsdShade)
スケルトン / ブレンドシェイプ (UsdSkel)
UI (UsdUI)

USDライブラリとHydra



USDライブラリは、USD形式を扱うためのAPI群を提供します。特に重要なコンポーネントとして、リアルタイムおよびオフラインレンダリングに対応するHydraがあります。

Hydraは、レンダーデリゲートと呼ばれるプラグインアーキテクチャを採用しており、様々なレンダラーバックエンドを切り替えて利用することができます。

主なレンダーバックエンド:

公式:

HdStream (Stream): OpenGLバックエンド
HdEmbree: Intel Embreeライブラリをベースにしたレイトレーシングレンダープラグイン
HdPrman: RenderMan用バックエンド

ハードウェア会社製:

Radeon ProRender for USD: Radeon ProRender用プラグイン
HdOSPRay: OSPRay用プラグイン
RTX Renderer: NVIDIA Omniverse用レンダラー

USD採用アプリケーション搭載:

Karma: HoudiniのCPUレンダラー
Houdini GL: HoudiniのOpenGLバックエンド

サードパーティー:

HydraNSI: NSIインターフェース対応レンダラー用プラグイン
Arnold USD: Arnoldレンダラー用プラグイン
OctaneRender Hydra / Octane X Hydra: OctaneRender用プラグイン
Redshift Solaris Hydra plugin: Redshift用プラグイン
hdRstr: リアルタイムレンダラー

オープンソース:

Cycles Hydra Render Delegate: Blender Cycles用プラグイン
MoonRay: DreamWorks製レンダラー
HdAurora: Autodesk Aurora用プラグイン

USDの歴史と開発



USDは、ピクサー社内のジオメトリキャッシュシステム「TidScene」と3Dアニメーションツール「Presto」の統合のために開発されました。レンダーエンジンのHydraは、Prestoの旧来のレンダーエンジンの後継として開発され、GPUベースでRenderManのプリミティブをサポートしています。

2016年に、ピクサーはUSDをオープンソースとして公開し、広く利用されるようになりました。

USDの用途



USDは、以下のような様々な用途で活用されています。

上位レベル3D APIとしての使用: シーングラフAPIとして、OpenSceneGraphなどの代替として利用。
ファイル交換形式としての使用: FBXなどの従来の形式では受け渡せない、レンダラー固有のパラメータを詰め込むことが可能。
シーンキャッシュとしての使用: Alembic形式の代替として、高速な読み込みを実現。
レンダリング中間形式としての使用: RIB形式の代替として、RenderManなどのレンダラーで利用。
製作パイプラインでの使用: シーンのオーサリング、アセットの管理、レンダリングなど、制作パイプライン全体での活用。

USDZ形式とAR



USDをZIP圧縮したUSDZ形式は、AR(拡張現実)コンテンツの配信に広く利用されています。

USDZ形式への変換ツール:

usdzip (USDに付属)
usdz Tools (Apple)
Reality Converter (Apple)
Adobe Aero
StemCell (TurboSquid)
Quixel Bridge
USDZ Converter (ViewAR)
Vectary

USDZ形式の表示:

ARKit 2以降 (Apple)

USDに対応するソフトウェア・プラグイン



多くの3DCGソフトウェアやプラグインがUSDに対応しています。

USD及びHydraビューポート搭載ソフトウェア:

USDView
Katana 3.0以降
Houdini 18以降
Maya 2022以降
Nuke 13.0以降
Blender 4.0以降

USD形式のインポート及びエクスポートのみ可能なソフトウェア:

3ds Max 2021.1以降
Cinema 4D R23以降
Modo 14.1以降
Unity 2019.1以降
Unreal Engine 4.16以降
Gaffer
Clarisse 4.0以降
KeyShot 10.0以降
CityEngine 2020.0以降
ZBrush 2021.6以降

USD形式のインポートのみ可能なソフトウェア:

Mari 4.6v4以降

USDの採用事例



映画:

ピーターラビット (2018年)

ゲーム:

* グランツーリスモ7

まとめ



Universal Scene Description (USD) は、3Dシーンデータの効率的な管理と交換を可能にする、強力なフレームワークです。多様な形式、拡張性、レンダーバックエンドのサポートにより、様々な分野で活用が広がっています。USDの知識は、現代の3Dコンテンツ制作において不可欠なものとなりつつあります。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。