NVIDIA has published USD BRep, a standalone C++ and Python library from its Omniverse group that brings boundary representation (BRep) solid modeling based on NURBS into OpenUSD, the open scene description framework. According to the project's listing on GitHub, the library is released under the Apache-2.0 license and had 1,149 stars at the time of publication. It supports Windows, Linux and macOS and ships a Python GUI alongside its core API, giving engineers and developers a way to work with precise solid geometry inside USD scenes.
What USD BRep adds to OpenUSD
OpenUSD is designed to describe complex 3D scenes and to let many different tools share them. Much of the geometry used in visual work is built from polygon meshes and simpler primitives, which suit rendering and visual effects well. Solid modeling is a different discipline. It describes an object as a closed solid with defined faces, edges and vertices, which is what engineering and manufacturing software typically requires.
The project's description notes that NURBS is the geometry format behind STEP, IGES and JT, three exchange formats commonly used for computer-aided design data. NURBS, short for non-uniform rational B-splines, describes smooth curves and surfaces using exact mathematical definitions, so a part can keep its precise shape rather than being approximated. Bringing this representation into OpenUSD means solid parts can sit in the same scene as other assets, rather than living in a separate file workflow.
A C++ core with Python access
The repository describes both a C++ library and Python bindings, along with a runnable Python GUI for interactive exploration. Developers who need compiled performance or want to integrate the code into existing native applications can work with the C++ API directly. Those building scripts, automated pipelines or quick experiments can use the Python layer instead.
- A C++ library that forms the core of the project
- Python bindings for scripting and automation
- A runnable Python GUI for interactive exploration of geometry
Having a graphical front end matters for evaluation. Teams deciding whether a new geometry library fits their workflow can inspect models visually before writing integration code.
Repair tools and what they preserve
One of the more practical features is the usd.heal_file utility, which repairs BrepArray geometry. According to the project description, the repair keeps layers, materials and instances intact. For studios working with large scenes, that distinction is important. A geometry fix that wiped out material assignments or broke references to shared assets would create more work than it saved.
Repairing imported solid geometry is a familiar task in digital content work. Models that pass through several tools can accumulate small defects, such as gaps or inconsistent surface boundaries, that cause trouble later in the pipeline. A utility that corrects these problems in place, without forcing a full re-export from the original authoring tool, reduces friction for production teams.
Platform support and setup
The library builds on Windows, Linux and macOS, covering the operating systems most commonly used by both studios and engineering teams. The repository states that most dependencies are pulled in automatically through Packman, including OpenUSD, Python 3.12 and pybind11. That approach means developers do not need to assemble each component by hand, which lowers the barrier to a first successful build.
Automatic dependency handling is not a guarantee of a trouble-free setup, however. Teams with custom build environments, locked software versions or restricted network access should test the build early and confirm that each dependency resolves correctly in their own infrastructure.
Why it matters for readers
For readers outside computer-aided design, the significance lies in convergence. Visual pipelines and engineering pipelines have often relied on separate formats and tools, and moving data between them has been costly and error-prone. A library that allows NURBS solid geometry to live inside OpenUSD points toward a shared scene description capable of carrying both visual and precise engineering data.
The Apache-2.0 license is permissive. In general terms, it allows organisations to use, modify and distribute the code, including in commercial products, subject to the conditions set out in the license text. Anyone planning to rely on the library should read that text directly rather than depend on summaries.
What to watch next
The project is available now on GitHub, and its adoption will depend on how studios and engineering teams test it against real production assets. Useful signals to watch include the frequency of updates, the responsiveness of maintainers to reported issues, and whether third-party tools begin to support the format. For a project that connects two communities that rarely share tooling, those practical signals will matter more than the initial announcement.
Related: New Free Driver Brings NVIDIA RTX Cards to macOS Sequoia Intel Macs · Bounded Origin Caps Costly Server Work Triggered by HTTP Traffic
Comments (0)