STL 转 GLB
将 STL 转换为 GLB,在网页或 AR 中展示可打印模型。免费,在浏览器中完成,无需上传。
将 STL 文件拖放到这里
STL 转 GLB:把打印模型放到网页上
这个页面在浏览器里把 STL 转换为 GLB。拖入 STL,在预览里检查,然后下载 GLB,网页查看器、AR 应用和游戏引擎都能加载。文件不会上传。
STL 适合给切片软件用,但网页几乎都不能直接显示它。网页 3D 查看器、<model-viewer> 组件和安卓的 Scene Viewer 需要的是 GLB,也就是二进制形式的 glTF。如果你卖打印件或分享设计,想让顾客在商品详情页里拖动查看模型,或者下单前用 AR 把它摆在桌上看看,通常第一步就是把 STL 转成 GLB。
STL 转 GLB 的步骤
1. 把 .stl 文件拖到转换区域,或点击选择。ASCII 和二进制 STL 都可以。
2. 在预览里检查模型。
3. 除非确定 STL 是 Y 轴向上,否则保持勾选“修正向上轴”。
4. 点击“转换为 GLB”,.glb 会直接下载。随后页面会显示输出大小,可以据此判断放到网页上是否够轻。
用于商品页时,面数很高的 STL(高精度导出可能有几百万个三角面)会生成很大的 GLB,手机上加载很慢。用较低精度重新导出 STL,或者在 3D 编辑软件里减面,可以让页面保持流畅。
要把游戏模型或扫描得到的 GLB 拿去打印,可以用GLB 转 STL。
转出来的 GLB 里有什么
GLB 能存的内容比 STL 多得多,所以关键是 STL 能带过去什么、带不过去什么:
- 几何体
- 逐个三角面保留。转换器不简化,也不修复网格。
- 着色
- 沿用 STL 的面片法线,曲面在 GLB 里和在切片软件里一样有棱有角。STL 导出精度越高,曲面越平滑。
- 材质
- 一个普通的默认 PBR 材质,因为 STL 没有材质可带。想让模型看起来像某种耗材或树脂,之后在 3D 编辑软件里设置材质颜色和粗糙度。
- 颜色
- 几乎所有 STL 都不带颜色。少数带面片颜色的二进制 STL 在预览里能看到颜色,但不要指望用它做商品页的展示效果。
- 尺寸
- 数值原样复制,单位问题见下文。
- 文件大小
- 二进制 STL 每个三角面只占 50 字节,GLB 要为每个角点存位置和法线,所以 GLB 往往会大一些。转换后会显示输出文件大小。
进来是毫米,出去是米
这是最容易踩的坑。用于 3D 打印的 STL 几乎都以毫米为单位,只是文件里不写。glTF 规定单位是米。转换器不缩放,所以一个 60 毫米高的手办,转成 GLB 后高 60 个单位,glTF 软件会读成 60 米。
在普通网页查看器里看不出来,因为相机会自动对准模型。在 AR 里就很明显:AR 按真实尺寸摆放模型,你的手办会比房间还高。大多数 AR 查看器允许用双指缩放,但如果希望模型按真实大小出现,就在 Blender 等 3D 编辑软件里打开 GLB,缩放 0.001 倍后重新导出。
保持直立:修正向上轴
切片软件和 CAD 软件是 Z 轴向上,glTF 是 Y 轴向上。不做修正的话,在打印平台上立着的零件,在所有网页查看器里都会仰面躺着。这个页面默认勾选“修正向上轴”,把模型旋转 90 度,让它保持在打印平台上的姿态。
只有 STL 来自 Y 轴向上的软件时才需要取消勾选,这在打印文件里并不常见。预览显示的是输入文件在 STL 查看器里的样子;如果下载的 GLB 是躺着的,切换勾选状态再转一次。
常见问题
STL 怎么转成 GLB?
把 STL 拖到这个页面,检查预览,点击转换,完成后下载 GLB。文件不会上传,转换在浏览器里进行。
STL 转 GLB 后,在 AR 里为什么特别大?
STL 的数值通常是毫米,glTF 把它们当作米,模型就大了 1000 倍。转换器不缩放。在 3D 编辑软件里缩放 0.001 倍,就是真实尺寸。
转换时能给模型加颜色吗?
转换器里不能。GLB 使用一个普通的默认材质。在 Blender 等 3D 编辑软件里打开它,设置颜色或贴图,再重新导出 GLB。
转出来的 GLB 能在 iPhone 上看 AR 吗?
iPhone 和 iPad 的“快速查看”用的是 USDZ,不是 GLB。可以先把 STL 转成 GLB,再用 GLB 转 USDZ;也可以在 3D 模型格式转换器里直接选 USDZ 输出。
模型表面为什么是一块一块的棱面?
STL 存的是平面三角形,每个面只有一条法线,GLB 沿用了这一点。在 CAD 软件里用更高精度导出 STL,曲面会更平滑。
GLB 太大,网页加载慢怎么办?
转换器不减面。用较低精度重新导出 STL,或者在 3D 编辑软件里减面后再转换。转换完成后页面会显示文件大小,可以作为参考。
STL 文件会被上传吗?
不会。文件在你自己的设备上读取和转换。