English Q&A: Tools for OpenUSD

English Q&A: Tools for OpenUSD — USD-Updates

„USD is not just a file format — it’s a high-performance C++ framework to handle huge 3D data, originally for movie production.”

A live English Q&A session with Gerhard Schröder and Thomas Kumlehn — 31 minutes on the essential tools and concepts for OpenUSD:

  • USD vs. GLTF vs. Unity/Unreal: what really sets them apart
  • Apple Reality Converter: free tool, drag-and-drop PBR textures, zero developer account required
  • PBR explained: albedo, emission, roughness, normal maps, ambient occlusion, opacity
  • Single-sided geometry: how to find and fix invisible faces in USD
  • Why Reality Composer was deliberately not covered in this session
Was sind USD-Updates?

Kurze Videos und Talks von Gerhard Schröder rund um OpenUSD, USDZ und Augmented Reality im Apple-Universum — seit 2022.

Alle USD-Updates

Worum es geht

A special English-language live session of USD-Updates: Gerhard Schröder from northern Germany and Thomas Kumlehn from the south — both self-described as “a little bit crazy about USD” — walk an international audience through the fundamental tools and concepts of OpenUSD.

Thomas draws the key distinction: GLTF is browser-first and optimized for compact web delivery. USD is a high-performance C++ framework — originally built for film production at Pixar — that runs natively on the device and carries far more information than GLTF can. USD is the master format; GLTF can be derived from it for the web when needed. Game engines like Unity and Unreal require a “cooking” step — they produce optimized platform-specific binaries. USD loads directly, and Apple’s AR Quick Look acts as a kind of game engine that can digest USD without that cooking step.

The practical heart of the session: a live screen-share walkthrough of Apple’s Reality Converter. Free, no developer account needed — load an OBJ from Blender, add PBR texture maps via drag-and-drop (albedo, emission, normal maps, roughness, ambient occlusion, opacity, clear coat), export to USDZ. Thomas also demonstrates how to spot single-sided geometry issues using a special viewport mode and explains how to flip normals to fix them.

Kapitel

  • 0:00 — Welcome and introduction: why English for this session
  • 1:30 — What is USD? Open source, Pixar, Universal Scene Description
  • 3:00 — USD vs. GLTF: browser-focus vs. native framework
  • 6:00 — USD vs. Unity and Unreal: the “cooking” problem
  • 9:00 — Apple AR Quick Look as a native USD game engine
  • 11:00 — From 3D file to USD: starting with Blender and OBJ export
  • 13:00 — Apple Reality Converter: free download, no developer account needed
  • 15:00 — PBR texture channels: albedo, emission, normal maps, roughness, ambient occlusion
  • 18:00 — What is ambient occlusion (Kontaktschatten) and why pre-bake it?
  • 20:00 — Single-sided geometry: finding and fixing invisible faces
  • 24:00 — USD unit specification: meters, centimeters, and why it matters
  • 26:00 — Copyright metadata in USD files
  • 27:30 — Why Reality Composer is not covered today
  • 29:00 — Outlook: next session on June 6th after WWDC keynote

Erwähnt

Transkript (KI-bereinigt)

Welcome. Good afternoon or good morning, depending on your time zone. We start at 7 p.m. our time — a good time to talk about USD. My name is Gerhard Schröder and I’m here together with Thomas Kumlehn from the south of Germany. I’m from the northern part of Germany. And we are both a little bit crazy about USD. So I think it’s time to start to talk a little bit more about this technology system, about this open source complete ecosystem.

What is USD?

So USD is an open source standard for 3D information — and the same for web information. For websites and content on your mobile phone, especially on an iPhone.

What’s the difference to GLTF, Thomas?

So there are many commonalities. Both have in common: they are made to represent digital assets. The focus of GLTF is to run directly in the browser — only in the browser. And therefore it’s made very compact to have small file sizes. It’s already a kind of pre-processed to directly load into WebGL, the current standard to present 3D graphics in the browser. So it’s very browser-focused.

And it has similar features to present something on the screen. Google decided to make a subset of all these features also available to present in augmented reality. Then the data is handed over to a native application running on Android phones — if it’s installed already.

The magic point at this topic is that GLTF uses the browser as a basic layer for all further information. Currently it’s using the browser to present a 3D view, an interactive 3D view. Some phones can already use WebXR to also do the same in the browser. But USD can do the same also — but not via browser.

Die große Unterschiede ist: USD war nicht immer geplant in einem WebGL-Kontext. Es war immer geplant, um in einer nativen Anwendung zu laufen.

You can start an AR session from within a website — that’s very conveniently done by Apple. But there’s a strict line: this is the browser, then AR takes over, then the browser takes it back. There’s a strict line because of strategy differences — huge strategy differences.

USD vs. Unity and Unreal

Most immersive or 3D applications, especially games, nowadays are produced with so-called game engines. The most famous of them are Unity and Unreal Engine. The interesting thing is the result of “game cooking” — the result is that you have the game with binary code with the game engine included, with all the game assets optimized for a specific platform. And all of this is done for dozens of different platforms.

So the editor will export, let’s say, 5 or 10 different apps, depending on needs. Ja, und das Editor-Step ist immer needed und kann nur von einem Skilled-Personal, von Software-Engineern und insbesondere Game Designers und Game-Developers gemacht werden.

Und USD ist anders. Wie?

USD ist nicht nur ein File-Format. In fact, in the first place, it’s a software framework — high-performance C++ framework to handle huge 3D data, originally for the movie industry, for animated feature films. Because its founder is Pixar. Für 25 Jahre entwickelt Pixar in-house technologies und several years ago they decided to Open-Source their efforts. And since then it’s called OpenUSD, because it’s better to find on Google.

Die große Unterschiede ist, dass das USD-Dateiformat stark verwoben ist mit der High-Performance-Grafik-Framework. So much of those efforts that the game editors of Unity and Unreal — much of this effort is already taken care of by this graphics engine that was originally made for movie production. So the file format directly loads very effectively and the action can start right away.

So it’s kind of a game engine that can digest USD directly without cooking up optimized structures like the traditional game engines. That’s the big difference.

And Apple has a system that is using USD and doing a real-time presentation for in- or augmented reality with user interactions and even physics simulations of the simple kind.

From file to USD: the Reality Converter

In case I have a 3D file — how can I transfer this 3D object to a USD file? That’s the next part.

Ja, normal 3D Assets sind hand-made oder modelled in a so-called DCC — Digital Content Creation Tool. In our example, we are using the free and open source software Blender.

This can be exported from this scene in two different file formats. The easiest one would be OBJ. We can also export to GLTF 2.0. And there is a very interesting file format called FBX — that’s a proprietary file format from Autodesk.

So we export from Blender. Then I can load this OBJ into my instance of the so-called Reality Converter. That’s an Apple software. How much do I have to pay for it? Zero dollars.

For the Reality Converter, you don’t have to be a developer. Thank you, Apple.

So we have a 3D object. We can add extra textures that would replace a single solid color that came from the DCC. Here this is a very dark gray.

I could replace several PBR channels. PBR stands for Physical Based Rendering.

The base color, the diffuse color — that’s the so-called albedo. That’s the color that will be affected by the environment light of your surrounding. Then there’s an emission color — das ist etwas Self-illuminating, nicht affected by die Real-Color.

Then there are black and white channels for other things. And XYZ channels for normal maps. Normal maps are used to simulate very tiny structures on a normally plain surface to simulate fine details without having thousands of extra vertices.

Then we have the so-called ambient occlusion — der Kontaktschatten. And then we have opacity. If we want something to be partly transparent, we can also have a texture map. And this is clear coat. Most products that are made by the industry have a small layer of clear coat. And this is roughness for the clear coat. Roughness is used to decide: if the roughness value is very small, it will be very shiny. If it’s very high, it will look very dull.

USD unit specification

OSD was one of the first file formats to introduce an extra parameter that helps to specify how big is this thing — what is the graphical unit in meters, centimeters, or imperial values. The default value would be in meters, and a centimeter would be 0.01. Every asset you create with this tool can have an extra metadata field where you can specify copyright information or the origin of your data.

Single-sided geometry

This is single-sided geometry. An example: this face is seen from this side, but not from this side. See, there’s a hole. That’s very efficient because only one side has to be processed. But it can also be tricky to handle.

Therefore I would like to show a special feature. If I would go here — the red color says: the face you selected is looking away from you, not towards you. I won’t see it in the USD representation. That’s why I use this special mode to find out what faces are facing toward me and which are not. So I would like to flip the normal again to fix it.

Why not Reality Composer?

There is one further big tool we today don’t want to talk about: Reality Composer. Why? Two reasons. One reason: it’s very powerful, so it can take one or two live sessions to talk about it. And the other reason: it might get an update in two weeks time, so it makes no sense to talk about this tool today. The Reality Composer also gets several updates. The UI has not changed. And all the bugs — so the bugs also have not changed. That’s the reason.

Outlook

To our viewers and the persons who maybe will later hear this podcast — we will come back to all these topics in a few weeks. Next stop is the 5th of June. And see each other on the 6th of June — what happens after the WWDC keynote. Thank you and bye-bye.

Typische Fragen

Was ist der grundlegende Unterschied zwischen USD und GLTF?

GLTF ist browser-optimiert — kompakt, vorverarbeitet für WebGL, auf den Browser ausgelegt. USD ist ein High-Performance-C++-Framework, ursprünglich für die Filmindustrie bei Pixar entwickelt. USD läuft nativ auf dem Gerät, unterstützt Physik-Simulationen und kann deutlich mehr Metadaten tragen als GLTF. GLTF ist die Lieferformat-Lösung für das Web; USD ist das Mastering-Format.

Was ist der Apple Reality Converter und was kostet er?

Der Reality Converter ist ein kostenloses Desktop-Tool von Apple, das 3D-Dateien (OBJ, GLTF, FBX) in USD oder USDZ konvertiert. Es ist kein Developer-Account erforderlich. Per Drag-and-drop können PBR-Texturkarten hinzugefügt werden — Albedo, Emission, Normal Maps, Roughness, Ambient Occlusion, Opacity und Clear Coat.

Was ist Single-Sided Geometry und warum kann sie in USDZ ein Problem sein?

Single-sided Geometry bedeutet, dass eine Fläche nur von einer Seite gerendert wird — effizient, aber fehleranfällig. Dreht sich das Objekt so, dass man auf die Rückseite schaut, entsteht ein Loch. Der Reality Converter hat einen speziellen Viewport-Modus, der falsch ausgerichtete Flächen rot markiert — so lassen sich fehlerhafte Normals identifizieren und korrigieren.

Häufige Fragen

What is the main difference between USD and GLTF?

GLTF is optimized for the browser — compact, pre-processed for WebGL, browser-focused. USD is a high-performance C++ framework originally for movie production, handling massive 3D data. USD is not limited to the browser: it runs natively on the device, supports physics simulations, and can carry much more metadata than GLTF. GLTF is best for web delivery; USD is the master format.

What is the Reality Converter and how much does it cost?

Apple's Reality Converter is a free desktop tool that converts 3D files (OBJ, GLTF, FBX) to USD or USDZ. No developer account required. It allows adding PBR texture maps — albedo, emission, normal maps, roughness, ambient occlusion, opacity, clear coat — via simple drag and drop.

What is PBR and why does it matter for AR assets?

PBR stands for Physically Based Rendering. It describes how a surface reflects light realistically: albedo (color affected by environment light), emission (self-illuminating), roughness (shiny vs. dull), normal maps (simulated micro-surface detail), ambient occlusion (contact shadows), and opacity (transparency).

What is single-sided geometry and why can it be a problem in USD?

Single-sided geometry means a face is only rendered from one side — efficient, but can cause holes or invisible faces when viewed from the wrong angle. The Reality Converter has a special mode to highlight which faces are facing away from you, so you can identify and flip normals to fix these issues.

Why didn't they cover Reality Composer in this session?

Two reasons: Reality Composer is powerful enough to fill one or two full sessions on its own. And at the time of this live stream, it was expected to receive an update in the following two weeks — so covering it would have been outdated quickly. The Reality Converter was covered instead as the more stable starting point.