免费在线 · 无需注册 · 100% 本地

STL 转 GLB 转换器

拖入 .stl 文件,直接在浏览器中转换为 .glb。文件不会离开你的电脑。

⇪
将 STL 文件拖到这里
支持 .stl · 转换为 .glb

为什么要把 STL 转换为 GLB?

要在商店商品页、作品集或文档页面中加入打印零件的 3D 预览,就需要 GLB——<model-viewer> 不能原生加载 STL。这种转换是让可打印的 STL 嵌入任何网站或 AR 查看器的最简单方法。

谁会做这种转换

在商品页面嵌入预览的 Etsy / Thangs / Printables 卖家、在个人网站展示打印成品的创客,以及想通过移动端链接一键体验 AR 的爱好者。

常见问题

  • STL 的法线是逐面的——除非先焊接顶点(Blender:Merge by Distance),否则生成的 GLB 会呈现棱面着色。
  • GLB 把所有几何体嵌入一个文件。高面数的打印模型体积会迅速膨胀;移动端可考虑 Draco 压缩。
  • STL 本身没有材质信息,所以不会保留任何材质——除非重新制作,否则会是平淡的默认灰色 PBR 表面。

本工具的技术说明

Three.js STLLoader → 焊接顶点后的 BufferGeometry → GLTFExporter 二进制输出。内嵌默认的 metallic-roughness 材质,模型开箱即可渲染。

STL 与 GLB 有什么区别?

STL.stl

所有 3D 打印切片软件都能识别的三角网格格式。只有几何——没有单位、颜色或装配体。

优点
  • 通用 3D 打印格式——Cura、PrusaSlicer、Bambu Studio 都支持 STL
  • 小巧、简单,加载极快
  • 非常适合网格处理流程、仿真前处理器和快速预览
局限
  • 三角化近似——曲面会损失精度
  • 没有颜色、材质或装配体数据
  • 按惯例每个文件只有一个壳体(多实体会被合并)
典型用途:3D 打印、快速原型、基于网格的工作流程
GLB.glb

二进制 glTF——3D 界的 JPEG。自包含、体积小,在 Web、AR 和所有现代 3D 引擎中都能原生加载。

优点
  • 所有内容(几何、纹理、材质、动画)打包在一个文件中
  • 小巧快速——专为流式传输和 Web 分发设计
  • Blender、Unity、Unreal、three.js、<model-viewer>、Android ARCore……都原生支持
  • PBR 材质(金属度-粗糙度)在任何地方渲染效果都一致
局限
  • 二进制——无法手动编辑
  • 在传统 CAD 流程中较少见
典型用途:Web 3D、AR/VR、实时引擎、电商产品展示

深入了解这两种格式

STL 的由来

由 3D Systems 于 1987 年为第一台商用光固化(立体光刻)设备发明(名称由此而来——“STereoLithography”)。它原本只是一个用完即弃的内部格式;近四十年后,它仍是 CAD 与市面上所有切片软件之间的默认交接格式,原因很简单:没有其他格式及时获得普遍支持。

注意事项
  • STL 没有单位——以英寸创建的文件在公制切片软件中重新打开,会按 1/25.4 的比例打印。切片前务必确认源单位。
  • 非流形网格(孔洞、翻转的法线、内部壁面)切片时不会报错,但打印出来是无法挽救的废品。浪费耗材之前,请先运行网格修复工具。
  • ASCII STL 比二进制 STL 大约 5×,却毫无好处——除非确实需要对文件做 diff,否则请始终导出二进制。

实际用途:所有 FDM 和 SLA 切片软件(Cura、PrusaSlicer、Bambu Studio、Lychee、Chitubox)都把 STL 作为首要输入格式。仿真前处理器(Ansys、Abaqus)也读取 STL 进行网格划分。按需制造服务(Shapeways、JLCPCB 的 3D 打印业务、Protolabs)直接接受 STL 上传。

GLB 的由来

glTF 2.0 于 2017 年由 Khronos Group 批准,并迅速成为 W3C 推荐的 Web 3D 格式。GLB 是“一个文件装下一切”的二进制封装——几何、纹理、动画和场景图全部放在单个 .glb 中。由于 <model-viewer>、Android Scene Viewer 和所有现代游戏引擎几乎同时加入支持,它的普及呈爆发式增长。

注意事项
  • PBR 材质模型假定纹理处于线性空间——DCC 工具导出的已烘焙 gamma 的颜色贴图,在 Web 查看器中会显得发白褪色。
  • 如果没有预加载解码器,Draco 网格压缩反而会拖慢加载;除非确实需要节省带宽,否则请关闭它。
  • Y 轴朝上还是 Z 轴朝上:glTF 严格采用右手系、Y 轴朝上。Blender、3ds Max 和大多数 CAD 导出在导入时需要翻转坐标轴,否则模型会侧躺。

实际用途:电商产品页(IKEA、Amazon、Shopify 3D)、Android AR 快速查看、基于 <model-viewer> 的文档、NFT 市场以及实时配置器。只要 3D 资产需要在浏览器标签页中无插件渲染,答案就是 GLB。

如何将 STL 转换为 GLB

  1. 1
    将 .stl 文件拖到页面上。二进制和 ASCII STL 均可。全部在本地运行。
  2. 2
    在 3D 中预览网格,确认几何体正确。
  3. 3
    点击“下载 GLB”。可嵌入 three.js、<model-viewer>、Unity、Unreal 或 Android ARCore。

常见问题解答

为什么要把 STL 转换为 GLB?

STL 是 3D打印的交换格式,没有材质和颜色。GLB 是网页原生 3D 格式——体积小、单文件自包含,能在所有浏览器和 AR 运行环境中原生渲染。如果想在网上展示模型,GLB 就是你需要的格式。

GLB 会比 STL 小吗?

大致相当。二进制 STL 和 GLB 都紧凑地存储顶点;GLB 多了少量场景元数据,但顶点索引压缩得更高效。预计相差 ±20%。

会添加材质吗?

GLTFExporter 会写入默认的 PBR metallic-roughness 材质,让模型可见。STL 不含材质数据,所以没有什么可保留的——请在目标引擎中设置合适的材质。

可以把 GLB 放进 <model-viewer> 做网页 AR 按钮吗?

可以——这正是最典型的用法。再配合兼容 Android ARCore 的 Scene Viewer 链接,任何移动浏览器都能一键进入 AR。

会上传任何内容吗?

不会。Three.js 在你的浏览器中载入 STL,并通过 GLTFExporter 重新导出为 GLB。文件不会离开你的设备。

相关转换器

STL → OBJOBJ → GLBSTEP → GLBFBX → GLB