指南
OBJ 與 STL:何時 OBJ 轉 STL
更新 · 僅網格 OBJ 到 STL
把 OBJ 的幾何、材質和可編輯性,和只剩三角形的 STL 列印流程放在一起比。然後在瀏覽器裡私下 OBJ 轉 STL。
OBJ 和 STL 都描述表面,但它們不能互換。OBJ 是 Wavefront 家族裡靈活的網格檔。STL 是面向製造和切片器的三角形列表。快要列印時,轉換是對的一步。還需要 STL 裝不下的資訊時,轉換是錯的一步。這個頁面是做決定用的,不是轉換工具的第二份拷貝。
每種檔案用來做什麼
還在建模、拆物件、指定材質時,用 OBJ。Bambu Studio、Cura 或 PrusaSlicer 需要一個能放到熱床上的實體時,用 STL。很多流程兩份都留:專案裡放 OBJ(如果有,連同 MTL),列印設定旁邊放一份二進位 STL。因為 STL 下載了就把 OBJ 刪掉,是後來想要回 UVs 和物件名時丟東西的方式。
| OBJ | 本工具的 STL | |
|---|---|---|
| 典型用途 | 編輯、算圖、交換網格 | 切片和列印 |
| 面 | 多邊形,按面儲存 | 只有三角形 |
| 多個物件 | 一個檔案裡的命名物件 | 合成一份三角形列表 |
| 材質 | 常常是單獨的 MTL | 丟掉 |
| UVs 和貼圖 | 可以引用 | 丟掉 |
| 單位 | 你建模時用的那種 | 不儲存;我們把數字縮向毫米 |
| 修復 | 不會自動做 | 不會自動做 |
合併這件事要緊。公仔加單獨底座的 OBJ,進來時可能是兩個物件。轉換寫出一個 STL,切片器就匯入一個物件。如果要兩次列印,就匯出兩個 OBJ,分別轉換。物件名不會變成單獨的 STL 檔案。
轉換丟掉什麼
三角形留下。位置會縮放,預設還會旋轉,讓你選的朝上軸指向 Z。其他東西不在這個 MVP 的範圍內。
OBJ 裡的平滑群組和頂點法線不是能來回保留的功能。STL 每個三角形存一條面法線,由匯出器根據角點計算。切片器不會像算圖器使用光滑 OBJ 的法線那樣使用它。
UVs、貼圖檔名和 MTL 是故意忽略的。一種線材顏色的列印不需要它們。全彩流程需要,所以不該假裝這個頁面的 STL 還帶著它們。留著 OBJ。
如果你的匯出寫了頂點色,也不會複製。曲線和單獨的點會跳過。檔案沒有面時,轉換會停下並說明。STL 裡沒有可以誠實放進去的東西。
STL 裡沒有層級,也沒有動畫。擺好姿勢的角色應該按你要的姿勢從 Blender 匯出,並套用修改器,讓 OBJ 裡已經是最終表面。
轉換不承諾什麼
有人把「我匯出了 STL」當成「這個網格能列印」。這是兩句話。非流形的邊、外殼上的洞、翻過去的一塊、比噴嘴還薄的壁,都會還在。包圍盒可以看起來完美,切片器仍然拒絕檔案。在 Blender 或其他網格工具裡修好,再匯出。本站不跑修復核心,條款裡用更直白的話說的是同一件事。
縮放是另一個假承諾。STL 不會記住你的意思是毫米。轉換按你選的單位把數字寫大或寫小,切片器再把那些數字讀成毫米。選和 OBJ 一致的單位。工具頁上的盒子是讓你在印表機之前看到結果。
一條實用規則
只要下面有一條成立,就留著 OBJ:你還會改網格,你還在算圖,它有不止一個你可能分開列印的物件,或者你在意它的材質。螢幕上的下一個應用程式是切片器時,再做 STL。改了單位或修好網格時,做一份新的 STL。不要堆一疊從沒核對過毫米尺寸的來歷不明的 STL。
如果還不確定拿到的是哪種檔案,讀 什麼是 OBJ 和 什麼是 STL。如果你已經知道要列印檔,轉換步驟 就是這張表的 Blender 到切片器版本。
二進位為什麼是預設,寫在 二進位與 ASCII STL。只有想把座標當文字讀的時候才用 ASCII。對切片器來說,二進位不是 OBJ 的較差副本,而是你剛剛決定要做的那份檔案。
問題
有了 STL 之後該刪掉 OBJ 嗎?
如果還可能改模型、再算圖,或按另一種縮放重新匯出,就不要刪。STL 是列印副本。OBJ 仍然是資訊更多的網格檔。
轉成 STL 會補洞嗎?
不會。面是複製過去的。OBJ 裡的洞在 STL 裡還是洞。修復是建模軟體或你信任的網格工具裡的另一步。
顏色會留下嗎?
在這個轉換裡不會。材質、MTL、UVs 和頂點色都會忽略。STL 是一層三角形外殼。