📈 GH Trending Explorer 🎲 Surprise me

← all repos

NVIDIA-Omniverse / usd-brep

git clone https://github.com/NVIDIA-Omniverse/usd-brep.git v1.0.0 · 11d ago

USD BRep is a standalone C++ and Python library for NURBS-based boundary representation (BRep) solid modeling

—
stars, 24h
—
stars, 7 days
+1.7k
stars, 30 days · #178
1.7k
★ total
258
forks · 17 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC++
LicenseApache-2.0
Created2026-10-08 (12d ago)
Last push11d ago
Watchers26
OwnerOrganization

Links

README excerpt
# USD BRep
Standalone Omniverse repo containing USD BRep (NURBS boundary-representation solid modeling) libraries.
## Requirements
- **Git** and **Git LFS**: Git LFS is required for the large binary fixtures tracked in `.gitattributes` (USD assets, STEP/IGES/JT models).
- **(Windows - C++ Only) Microsoft Visual Studio (2019 or 2022)** with the MSVC C++ toolset:
 - Install from Visual Studio Downloads (or **Build Tools for Visual Studio**) with the **Desktop development with C++** workload selected. A VS install without the C++ toolset is not enough.
 - The build uses this **host-installed** compiler (`msbuild.link_host_toolchain` in `repo.toml`), not Packman `msvc`.
 - `msbuild.vs_version` is pinned to `vs2019`, so VS 2022 users also need the **MSVC v142 build tools** component.
 - If discovery fails, set `msbuild.vs_path`, `msbuild.vs_version`, or both — see repo_build toolchains. These settings locate an installed toolset; they do not install one.
- **(Windows - C++ Only) Windows SDK**: Install alongside MSVC via the Visual Studio Installer. If discovery fails, set `msbuild.winsdk_path` in `repo.toml`.
- **(Windows) Microsoft Visual C++ Redistributable**: Required to run the built binaries, which link the VC runtime dynamically rather than bundling it. The **Desktop development with C++** workload above ships the redistributable, so a machine set up to build already has it — install it separately only on machines that run the binaries without Visual Studio.
- **(Linux) build-essential**: `sudo apt-get install build-essential`
All other build-time dependencies — OpenUSD, Python 3.12, pybind11, **premake**, and the `repo_*` tools — are pulled automatically via Packman when you build.
## Using this repo
Prerequisites are listed under Requirements. Use `./repo.sh` on Linux and macOS, `./repo.bat` on Windows. macOS: macOS local development.
### Build it
Run prebuild before building a fresh checkout or after deleting `_build`. It stages
the omniSolid schema plugin in `_build/schema/omniSolid/resources`; `repo build`
alone does not create these resources, which USD tools require at runtime.
 [code] 
### Test it
 [code] 
### Format it
 [code] 
### Run the Python GUI
 [code] 
See `tools/smlib_gui/README.md` for smoke-test and troubleshooting commands.
### Explore examples
Runnable compositions organized by API layer live under Examples.
## macOS local development
Apple Silicon only: `./repo.sh build -p macos-universal`. Build symlinks host Packman Python into `_build/target-deps/python` when available (`SMLIB_PYTHON_ROOT` to override).
**Python-only (default):** kernel, C++ tests, `_smlib_tests`, and `_smlib_dev` (imports need Tier 1 `_omni_solid`). No OpenUSD, OCCT, or `_omni_solid`.
 [code] 
**Tier 1 (optional):** local OpenUSD 3.12 staged via `setup-macos-local-deps.sh`.
 [code] 
Set `PYTHONPATH="$PWD/_build/macos-universal/release"` to import Python extensions. Packman OpenUSD/Python packages are not available on macOS. The macOS premake package (`p