3MF vs STL: cẩm nang in 3D không lỗi

So sánh 3MF và STL trong thực tế: vì sao mô hình Bambu Studio lỗi trong Cura, cách sửa sai lệch tỷ lệ đơn vị và mẹo chuyển đổi sang in đa màu.

Kris
In 3D3MFSTLSlicerChuyển đổi định dạng

Tuần trước, một thành viên mới trong máy chủ Discord của chúng tôi đã đăng lời cầu cứu trong tuyệt vọng: "Tại sao mọi mô hình tôi tải về từ MakerWorld đều báo cả tá lỗi và không thể mở được trong Cura?" Đằng sau sự bực bội đó là một trong những tình huống tiến thoái lưỡng nan khó tránh khỏi nhất trong giới in 3D: bạn nên tiếp tục gắn bó với định dạng STL cổ xưa, hay chuyển sang đón nhận định dạng 3MF hiện đại?

Nếu bạn vẫn đang băn khoăn không biết nên lưu mô hình của mình ở định dạng nào, đây là cẩm nang đúc kết từ kinh nghiệm thực chiến mà chúng tôi đã tổng hợp để giúp bạn tránh những cái bẫy thường gặp.

Tiêu chí so sánhĐịnh dạng STL truyền thốngĐịnh dạng 3MF hiện đại
Bối cảnh ra đờiNăm 1987, một danh sách các tam giác rời rạc hỗn loạnNăm 2015, vùng chứa nén dựa trên XML
Đơn vị vật lýKhông có đơn vị (thường gây ra thảm họa phóng to/thu nhỏ 10 lần hoặc 25,4 lần)Xác định rõ ràng từng milimét, xentimét hoặc inch
Màu sắc & Vật liệuChỉ lưu hình học thuần túy, tiêu chuẩn không hỗ trợ màu sắcHỗ trợ gốc cho nhiều đầu đùn, tham số in và vật liệu
Tính toàn vẹn đa tạpDễ bị thủng lỗ, chồng chéo mặt và đảo ngược vector pháp tuyếnTiêu chuẩn bắt buộc lưới phải đóng kín, cực kỳ thân thiện với phần mềm cắt lớp
Dung lượng tệpThường phình to lên tới hàng chục hoặc hàng trăm MBTích hợp sẵn nén ZIP, thường nhẹ hơn từ 50% đến 80%

Vùng sự cố: Định dạng STL truyền thống phá hỏng bản in của bạn như thế nào?

Nguyên lý hoạt động của STL cực kỳ đơn giản và thô sơ: nó xấp xỉ bề mặt của mô hình bằng vô số hình tam giác nhỏ li ti. Điều này dẫn đến một loạt "thảm họa thường ngày" có thể khiến huyết áp của bạn tăng vọt:

  1. Mô hình bị thu nhỏ 10 lần hoặc 25,4 lần một cách bí ẩn: Tệp STL không hề lưu trữ "đơn vị" bên trong, mà chỉ ghi lại các con số thuần túy. Nếu bạn thiết kế một khối lập phương kích thước 10x10 trong SolidWorks và xuất ra theo đơn vị inch, tệp STL sẽ chỉ ghi lại con số "10". Khi phần mềm cắt lớp của bạn (chẳng hạn như PrusaSlicer hoặc Cura) mặc định đọc theo đơn vị milimét, mô hình của bạn sẽ bị thu nhỏ đúng 25,4 lần. Cách khắc phục nhanh: điều chỉnh tỷ lệ mô hình trong phần mềm cắt lớp theo cách thủ công lên 2540% (từ inch sang mm) hoặc 1000% (từ cm sang mm).
  2. Các chi tiết văng tứ tung khắp nơi: Bạn thiết kế một mô hình robot có các khớp nối chuyển động hoặc phối nhiều màu sắc khác nhau. Khi xuất ra STL, hoặc là toàn bộ chi tiết bị dính chặt vào nhau thành một khối duy nhất không thể tách rời, hoặc là bạn phải đối mặt với một thư mục chứa hàng chục tệp STL rời rạc với tên gọi hỗn độn. Do STL không hỗ trợ cấu trúc cây phân cấp cảnh (scene graph), nên toàn bộ mối quan hệ lắp ráp đều bị biến mất.
  3. Lỗi phần mềm cắt lớp và bề mặt bị thủng: Do sai số độ chính xác dấu phẩy động, giữa các tam giác trong tệp STL thường xuyên xuất hiện những khe hở siêu nhỏ. Bạn háo hức nhấn nút "Slice", và phần mềm lập tức phản hồi thông báo: "Phát hiện cạnh phi đa tạp", hoặc tệ hơn nữa, bạn đem đi in và nhận ra một mảng bề mặt đã... biến mất hoàn toàn.

Rời rạc hóa lưới tam giác STL và xấp xỉ đa giác bề mặt

Vì sao 3MF lại vượt trội? Bản chất nó là một tệp ZIP được ngụy trang

3MF (3D Manufacturing Format) là một tiêu chuẩn hiện đại được đồng sáng lập bởi các tên tuổi lớn trong ngành như Microsoft, Bambu Lab và Prusa Research. Về bản chất, tệp .3mf chính là một gói nén ZIP đã được đổi phần mở rộng. Bên trong, bạn sẽ thấy các lưới hình học XML, kết cấu vật liệu, thậm chí cả vị trí sắp xếp trên bàn in và các thông số cắt lớp đều được tổ chức gọn gàng, ngăn nắp.

Định dạng này tích hợp sẵn đơn vị đo lường, hỗ trợ in nhiều màu sắc và đặc tả kỹ thuật bắt buộc mô hình phải là khối đa tạp đóng kín, qua đó điều trị dứt điểm những "căn bệnh kinh niên" của STL. Tuyệt vời hơn nữa, nhờ các thuật toán nén hiện đại, cùng một mô hình khi lưu dưới dạng 3MF thường chỉ có dung lượng bằng một nửa (hoặc thậm chí nhẹ hơn nữa) so với bản STL tương ứng.

Cấu trúc phân cấp đa phần lắp ráp và đa màu sắc trong 3MF

Mẹo chuyên gia: Cách xử lý tệp 3MF của Bambu mà Cura từ chối mở

Quay lại câu hỏi ở phần đầu bài viết. Rất nhiều mô hình 3MF tải về từ các trang cộng đồng là "tệp dự án" được lưu bởi Bambu Studio hoặc OrcaSlicer. Chúng không chỉ chứa phần mô hình, mà còn kèm theo các nút quy trình xử lý riêng của Bambu (chẳng hạn như các tệp cấu hình độc quyền .bbl). Trong khi đó, Cura lại tuân thủ nghiêm ngặt tiêu chuẩn chung do Microsoft dẫn đầu; khi bắt gặp các phần mở rộng cấu hình độc quyền chưa xác định này, Cura sẽ lập tức báo lỗi và gặp sự cố văng ứng dụng.

Cách xử lý thủ công dứt điểm:

  1. Đổi phần mở rộng của tệp .3mf đã tải về thành .zip.
  2. Giải nén tệp ra và tìm đến thư mục Metadata.
  3. Xóa các tệp XML thuộc phần cấu hình riêng của phần mềm cắt lớp (thông thường bạn chỉ cần giữ lại phần lưới cốt lõi tại đường dẫn 3D/3dmodel.model và hình ảnh thu nhỏ ở thư mục gốc).
  4. Chọn lại toàn bộ các tệp còn lại, nén chúng thành tệp lưu trữ ZIP, rồi đổi phần mở rộng trở lại thành .3mf. Vậy là xong: giờ đây bạn đã có một tệp 3MF hình học thuần túy, tinh gọn mà bất kỳ phần mềm cắt lớp nào cũng có thể nhận diện trơn tru.

Nếu bạn thấy việc đổi tên và giải nén thủ công quá rườm rà, cách đơn giản nhất là sử dụng công cụ chuyển đổi 3MF sang STL của Any3D chạy ngay trên trình duyệt web. Không cần tải tệp lên máy chủ, chuyển đổi cục bộ tức thì và tự động loại bỏ những thành phần gây xung đột tương thích cho bạn.

Giải đáp thắc mắc trong thực tế

Nếu 3MF tốt như vậy, tại sao nhiều mô hình cũ vẫn dùng định dạng STL?

Đó là do quán tính lịch sử. Rất nhiều máy phay CNC đời cũ và các phần mềm 3D thời kỳ đầu chưa từng phát triển tính năng nhập tệp 3MF. Dù STL cồng kềnh và lạc hậu, nhưng cũng giống như tệp văn bản thuần (TXT), hầu như bất kỳ phần mềm nào cũng có thể mở được nó. Nếu bắt buộc phải nâng cấp một tệp STL cũ, bạn có thể sử dụng công cụ chuyển đổi STL sang 3MF của Any3D để bọc nó vào một vùng chứa định dạng hiện đại.

Sau khi chuyển đổi từ 3MF sang STL, màu sắc phối đa màu có được giữ lại không?

Chắc chắn là không. Định dạng STL tiêu chuẩn chỉ giống như một khối đất sét thô, nó thậm chí còn lưu trữ vector pháp tuyến của đỉnh một cách kém hiệu quả, chứ chưa nói đến màu sắc. Nếu bạn cần chuyển giao các lưới đa giác có màu sắc giữa các phần mềm khác nhau, hãy ưu tiên sử dụng OBJ đi kèm tệp vật liệu MTL, VRML, hoặc GLB.

Làm thế nào để kiểm tra nhanh xem lưới mô hình có bị lỗi hỏng hay không?

Trước khi cắt lớp, bạn có thể sử dụng trình xem mô hình 3D trực tuyến Any3D ở chế độ khung dây và quan sát xem có các đường đen bất thường ở các góc hay không. Hoặc bạn chỉ cần thả mô hình vào công cụ phân tích mô hình Any3D để kiểm tra kích thước hộp bao cùng trạng thái đa tạp (manifold status), điều này sẽ giúp bạn tiết kiệm hàng giờ đồng hồ lãng phí sợi nhựa in và điện năng.

Tôi chỉ thỉnh thoảng in vài món đồ nhỏ để giải trí, liệu có thực sự cần chuyển sang 3MF không?

Nếu mô hình của bạn chỉ là một khối đơn giản, một chiếc ống cắm bút và không cần phối màu, định dạng STL vẫn đáp ứng hoàn hảo nhu cầu. Nhưng một khi bạn bắt đầu xử lý các mô hình lắp ráp, các bản in đa màu hoặc những tệp có dung lượng vượt quá 50MB, hãy tạo thói quen lưu tệp ở định dạng 3MF. Cả ổ cứng lẫn phần mềm cắt lớp của bạn đều sẽ cảm ơn bạn vì điều đó.

Công cụ liên quan

6
Xem tất cả
Chuyển mô hình 3D thành ảnh
Trình xem mô hình 3D
Tính chi phí in 3D
Chụp ảnh STL
Trình xem GLB
Công cụ đo mô hình 3D