STL转OBJ转换器
很多渲染、贴图和游戏工具只支持OBJ而不支持STL,转换后即可把可打印模型导入这些工具。模型形状逐个三角面原样复制,变化的只是文件的存储方式。
3D 模型转换器
或将STL, OBJ, MTL … 文件拖放到此处 ·
单个文件最大 95 MB· 最多 20 个文件· 30 分钟后删除
文件在我们的服务器上处理,并在 30 分钟后删除。
STL 和 OBJ 不保存单位。如果零件在切片软件中显示得小了或大了 10 倍或 25.4 倍,说明单位读取有误,请在此处设置。
Blender、CAD 软件和切片软件使用 Z 轴向上;glTF、Unity 和大多数游戏引擎使用 Y 轴向上。如果导入后模型是侧躺的,请切换此项。
将 STEP 或 IGES 实体转换为网格时使用。精细的曲线更平滑,但文件更大;粗糙足够用于快速预览。
仅用于 PNG、JPG 或 SVG 输入。浮雕会抬高暗部区域;灯影相片(Lithophane)是一块薄板,背光时可显示照片;拉伸则把徽标或 SVG 轮廓变成平面实体形状。
打印模型的宽度;高度按图片的宽高比自动计算。
浮雕或灯影相片的最大凸起高度,或拉伸形状的厚度。灯影相片通常使用 2–3 mm。
浮雕下方的实心底板,使打印件保持整体。0 表示没有底板。
使用方法
- 1
上传STL文件
支持 ASCII 或二进制 STL,最多 20 个文件,每个不超过 95 MB。文件上传 30 分钟后会从服务器删除。
- 2
按需调整模型朝向
打印用的模型是 Z 轴向上。如果目标软件是 Y 轴向上(例如 Unity),请在高级设置中把向上轴设为 Y-up,模型才会正立。
- 3
转换为OBJ
点击转换为 OBJ。每个 STL 会生成一个 .obj 文件,可以导入其他软件,也可以用文本编辑器打开。
STL 转 OBJ 会损失细节吗?
不会。OBJ 能容纳 STL 的每一个三角形,几何数据原样保留。你会得到共用顶点,以及更多 3D 软件都能读取的格式;但不会多出颜色或 UV 贴图,因为 STL 本来就没有这些。
50 字节二进制 STL 中每个三角形的大小
STL与OBJ存储同一网格的方式有何不同
STL 由 3D Systems 于 1987 年设计,目的是给打印机提供最简单的交接格式。每个三角形都完整写出自己的三个顶点,因此被六个相邻三角形共用的顶点会重复写六次。这让文件便于流式读取,却很难编辑:因为里面没有记录哪些三角形相互相连。
OBJ 来自 Wavefront Technologies,它只保存一份顶点位置列表,每个面通过指向列表中的条目来描述。相连的表面保持相连,这正是建模和雕刻工具所需要的。OBJ 还可以包含 UV 坐标、顶点法线、命名分组,以及指向 .mtl 材质文件的链接。从 STL 转换后,这些可选部分都是空的,等你自行添加。
STL
STL 网格
STL(stereolithography,立体光刻)是 3D Systems 于 1987 年创建的 3D 网格格式。它只以三角形列表的形式描述物体的表面几何,不含颜色、材质、单位或场景信息。由于结构简单,它成为 Cura 和 PrusaSlicer 等 3D 打印切片软件的默认输入格式。曲面由许多平面三角形近似表示,因此光滑的模型可能产生非常大的文件。
- 压缩方式
- –
- 透明度
- –
- 动画
- 不支持
- 发布年份
- 1987 · 3D Systems
OBJ
Wavefront OBJ
OBJ 是 Wavefront Technologies 开发的 3D 几何格式。它是纯文本文件,列出顶点、纹理坐标、法线和面,材质和贴图则由单独的 .mtl 文件引用。几乎所有 3D 建模软件、游戏引擎和 3D 打印工具都能导入。OBJ 不支持动画、骨骼绑定或场景层级,如果 MTL 和图片文件没有放在一起,贴图就会丢失。
- 压缩方式
- –
- 透明度
- –
- 动画
- 不支持
- 发布年份
- Wavefront Technologies
为打印制作的模型需要渲染、做动画、贴图,或放进不支持导入 STL 的游戏引擎时,人们就会把 STL 转换为 OBJ。
STL转OBJ、GLB还是STEP:如何选择目标格式
编辑、渲染或贴图
纯文本格式,自 20 世纪 90 年代以来几乎所有 3D 程序都能读取。
- 共用顶点,便于建模
- 可添加 UV 和材质
- 可在 Unity、Maya、Blender 等大多数 3D 软件中打开
在网页或 AR 中展示
单个二进制文件,包含材质,以米为单位。
- 可在 three.js 和 model-viewer 中加载
- 可在 Android Scene Viewer 中打开
- 适合产品预览
导入 CAD
把三角形包裹成实体的面。
- 可在 Fusion 360 和 SolidWorks 中打开
- 只能直接编辑,没有历史记录
- 曲线仍然是多边形面
如果你只想在浏览器中预览而不是编辑,STL 转 GLB 可以省去一步。如果 CAD 软件或机械加工人员需要这个零件,STL 转 STEP 会把网格包裹成实体。编辑后的模型需要送回打印机时,反向转换可以一次性生成新的 STL。
STL转OBJ常见问题
Unity能导入STL文件吗?
不能直接使用。Unity 的模型导入器支持 FBX、OBJ、DAE、3DS 和 DXF,以及已安装建模软件的格式,所以放进 Assets 文件夹的 STL 会被忽略。转换为 OBJ 是最快的办法,请先把向上轴设为 Y-up。
转换后的OBJ有用于贴图的UV坐标吗?
不会,因为 STL 本身就没有这些信息。OBJ 保存的是相同的三角形,不含纹理坐标。导入后可在 Blender 或你的贴图软件中展开 UV,之后就能绘制或应用图片纹理。
OBJ文件比STL大还是小?
取决于 STL 的编码方式。OBJ 对共用的顶点只写一次,再用索引引用,所以通常比 ASCII STL 小得多。与二进制 STL 相比,大小往往相近或略大,因为 OBJ 的数字是以文本形式保存的。
为什么转换后的模型在渲染器里棱角分明、不平滑?
STL 每个三角形只存一条法线,渲染出来是平面着色。在 Blender 中使用“平滑着色”或自动平滑角度,或在你的 3D 软件里重新计算法线,曲面就会重新显得圆滑。
多部件打印模型能转换成多个独立的OBJ对象吗?
如果 STL 包含多个互不相连的壳体,它们会输出到同一个 OBJ 文件中。可以在 Blender 中用“按松散部分分离”把它们拆成多个对象,也可以把每个零件分别作为单独的 STL 上传,每个零件得到一个 OBJ。
STL转OBJ会丢失什么吗?
几何数据不会丢失,每个三角形和顶点位置都会被复制。唯一没有保留的是二进制 STL 的 80 字节头部文字和未使用的属性字节,几乎没有软件会读取它们。
更多3D打印模型格式转换
- OBJ转STL转换器将Blender、ZBrush或扫描得到的OBJ模型转换为用于3D打印的二进制STL。自动三角化四边面、合并部件,并将单位校正为毫米。
- STL转STEP转换器将STL网格转换为可在Fusion 360、SolidWorks和FreeCAD中打开的STEP文件。设置STL未记录的单位,然后下载由平面构成的STEP实体。
- STL转GLB转换器将STL打印文件转换为GLB,用于网站、model-viewer和Android AR。毫米自动缩放为米,Z轴朝上转为Y轴朝上,让模型正立显示。
- FBX转OBJ转换器将来自Mixamo、Unity资源包或Maya的FBX文件转换为OBJ,附带MTL材质和纹理。支持二进制和ASCII格式FBX,每批最多20个文件。
- OBJ转GLB转换器将OBJ及其MTL和纹理合成一个GLB,可用于three.js、model-viewer、Shopify和Android AR。比例设为米,材质内嵌。
- 3MF转STL转换器在线将3MF转换为STL,适用于只支持STL的切片软件、打印服务和工具。几何形状保持毫米单位,颜色、构建板和打印设置不会保留。