英伟达开源SMLib CAD几何内核

近日,NVIDIA-Omniverse 在 GitHub 发布了一个名为 USD BRep的开源项目,介绍其为独立的 C++/Python 库,用于基于 NURBS 的BRep实体建模。

项目的核心是SMLib,一个有长期历史的基于NURBS(非均匀有理B样条) 的BRep(边界表示) 工业级CAD几何内核。SMLib 由Solid Modeling Solutions公司开发,公司2022年被NVIDIA收购,此前是商业付费闭源软件,仅面向老客户提供授权。

此次SMLib配套C++&Python API、OpenUSD格式集成、测试入口、Python CUI示例,以USD BRep 项目的形式开放,变成了Apache 2.0协议的开源软件,任何人都能基于它搭建3D CAD工具和AI Agent。

NVIDIA SMLib 介绍

SMLib(Solid Modeling Library),是英伟达收购 Solid Modeling Solutions 公司获得的工业级三维几何造型内核(CAD几何内核),拥有20多年商用历史,用于构建CAD、CAE、仿真前处理、Omniverse数字孪生等3D应用。

一、背景

  • 原厂商:Solid Modeling Solutions,配套还有NLib(NURBS库,《The NURBS Book》作者开发)、PolyMLib等组件。
  • 2022年:NVIDIA收购该公司,将SMLib纳入Omniverse生态,作为底层几何引擎。
  • 许可证:Apache 2.0开源协议,可免费商用,源代码开放,厂商不再收取昂贵的内核授权费。

二、核心能力

SMLib同时支持NURBS曲面(精确解析几何)+多边形网格混合造型,是它一大特色:

  1. NURBS实体建模:实体布尔运算(并、交、差)、拉伸、旋转、倒角、缝补、拓扑修复,传统CAD的Brep边界表示。
  2. 多边形网格建模:多边形Brep布尔运算、网格简化(减面)、孔洞填充、光线求交、STL导入导出;支持基于拓扑的曲面网格化,生成无裂缝网格(Crack-Free mesh),适合仿真、渲染。
  3. 曲面细分(Tessellation):内置3套细分器,把NURBS光滑曲面转换成三角面片,供渲染/仿真使用。
  4. 非流形拓扑:支持非流形几何体,适合复杂装配、多物理场仿真前处理。
  5. 配套NLib:专门处理NURBS曲线曲面计算,理论根基来自经典NURBS专著。

三、适用场景

  • 自主开发轻量化CAD/三维建模软件
  • CAE仿真软件的几何前处理(模型修复、简化、网格预处理)
  • Omniverse数字孪生、工业元宇宙场景,工业零部件三维构建
  • 3D打印模型处理、STL模型修复、几何检查

四、行业对比

  • 商业闭源内核:Parasolid(西门子)、ACIS(达索),高昂授权费;
  • 老牌开源内核:OpenCASCADE(开源CAD内核,使用广泛);
  • SMLib定位:成熟商业几何内核转为Apache2.0开源,NURBS+多边形混合能力强,深度对接NVIDIA GPU/Omniverse生态,适合结合AI生成三维模型。

五、局限

  1. SMLib是底层几何计算内核,不带UI界面;开发者需要自己开发GUI、文件格式、交互逻辑。
  2. 虽然开源,但文档体量大,几何内核开发门槛本身很高,几何算法调试难度大。
  3. 生态起步较晚,相比OpenCASCADE,社区案例、第三方插件更少。
相关资讯