Skip to content
Back to Blog
informational

3MF là gì? Định dạng In 3D đang thay thế STL

2026-05-17 9 min read

Vấn đề với STL mà chẳng ai nhắc tới

STL đã là định dạng file mặc định cho in 3D từ năm 1987. Trong giới công nghệ, đó là cả một thế kỷ. Một định dạng được thiết kế cho các máy in lập thể có giá đắt hơn cả một căn nhà giờ đây lại là mặc định cho các máy in để bàn có giá rẻ hơn một chiếc smartphone. Những bất cập đã bắt đầu lộ rõ. STL chưa bao giờ được tạo ra để chứa thông tin về màu sắc, thuộc tính vật liệu, texture map, hay các cài đặt in. Bạn có tò mò bên trong một file STL có gì không? Hãy mở một file bằng trình soạn thảo văn bản. Bạn sẽ thấy một danh sách các hình tam giác đơn giản, liệt kê một cách khô khan. Chỉ có vậy thôi. Mọi bề mặt trên một mô hình 3D đều bị chia nhỏ thành các mặt tam giác phẳng, mỗi mặt được mô tả bởi ba đỉnh và một véc-tơ pháp tuyến. Định dạng này không có khái niệm về đơn vị, đây là nguồn cơn của những cơn đau đầu không dứt. Một khối lập phương được mô tả rộng 10 đơn vị có thể là 10 milimét hoặc 10 inch, và bạn sẽ không biết cho đến khi slicer của bạn đoán mò. Đây là lý do tại sao cùng một file STL đôi khi được nhập vào với kích thước tí hon như nhà búp bê trong slicer này và lại khổng lồ trong một slicer khác. Và nó không thể lưu trữ thông tin màu sắc. Hoàn toàn không. Nếu bạn muốn in một mô hình nhiều màu trên một máy hiện đại như Bambu Lab X1C hay Prusa XL, bạn phải chia mô hình của mình thành các file STL riêng biệt cho mỗi màu, hoặc sử dụng một định dạng khác. Không có trường nào trong đặc tả STL dành cho vật liệu, infill, hay support. Mỗi lần bạn cắt lớp một file STL, bạn đều phải bắt đầu lại từ con số không. Hiệp hội 3MF—được thành lập vào năm 2015 bởi Microsoft, Autodesk, Dassault Systèmes, HP, và những công ty khác—đã ra đời để giải quyết mớ hỗn độn này. Giải pháp của họ là 3D Manufacturing Format (Định dạng Sản xuất 3D), một định dạng chứa hiện đại gói gọn hình học, màu sắc, vật liệu, cài đặt in, và siêu dữ liệu vào một gói duy nhất, gọn gàng.

Bên trong file 3MF thực sự có gì?

Về cấu trúc, một file 3MF chỉ là một file nén ZIP với phần mở rộng khác. Nếu bạn đổi tên bất kỳ file .3mf nào thành .zip và giải nén nó, bạn sẽ thấy một thư mục gọn gàng chứa các file XML, ảnh texture, và một file manifest. Cấu trúc mở này chính là thế mạnh lớn nhất của nó. Phần hình học cốt lõi nằm trong một file tên là 3dmodel.model, được viết bằng một lược đồ XML dễ đọc mà bất kỳ nhà phát triển nào cũng có thể triển khai mà không phải trả phí bản quyền. Bên trong file nén đó, đặc tả 3MF cơ bản định nghĩa một tập hợp dữ liệu phong phú: Nó lưu trữ hình học dưới dạng danh sách tam giác được đánh chỉ mục, giống như STL, nhưng với một khác biệt quan trọng: đơn vị được định nghĩa rõ ràng trong phần header của XML. Một mô hình được gắn thẻ milimét sẽ luôn được nhập vào đúng tỷ lệ, chấm dứt việc phải đoán mò. Nó xử lý màu sắc và vật liệu một cách tự nhiên. Các tam giác riêng lẻ hoặc toàn bộ đối tượng có thể được gán một màu cụ thể (dưới dạng giá trị hex RGBA) hoặc một vật liệu. Phần mở rộng Materials & Properties còn đi xa hơn, hỗ trợ các dải màu chuyển tiếp (gradient), vật liệu composite, và các phép gán phức tạp khác. Siêu dữ liệu như tên tác giả, ngày tạo, và mô tả đều có thể được nhúng trực tiếp. Đối với các xưởng in và các đội ngũ sản phẩm cần theo dõi lịch sử của một bộ phận, điều này là vô giá. Quan trọng nhất, nó có Print Tickets. Phần mở rộng này cho phép phần mềm slicer nhúng chiều cao lớp in, phần trăm infill, cài đặt support, và profile máy in ngay trong file. Khi bạn mở một file 3MF được lưu từ Bambu Studio, các cài đặt in dự định sẽ đi kèm với nó. Một file 3MF duy nhất cũng có thể mô tả toàn bộ một bàn in, với nhiều đối tượng được định vị và định hướng chính xác, mỗi đối tượng có cài đặt riêng. Một file STL mô tả một mesh; một file 3MF có thể mô tả cả một lô sản xuất. Kích thước file thường nhỏ hơn so với STL nhị phân đối với các mô hình phức tạp do cơ chế nén XML hiệu quả, vì vậy một file STL 45 MB có thể trở thành một file 3MF 38 MB.

Các Slicer Lớn Hiện Nay Xử Lý 3MF Như Thế Nào?

Hỗ trợ 3MF hiện đã là tiêu chuẩn trên mọi slicer chuyên nghiệp, nhưng mức độ hỗ trợ lại khác nhau. Một số coi nó chỉ như một định dạng hình học khác, trong khi những slicer khác tận dụng toàn bộ sức mạnh của nó. **Bambu Studio** có khả năng hỗ trợ 3MF tốt nhất trên thị trường hiện nay, không cần bàn cãi. Khi bạn lưu một dự án (File > Save Project), nó sẽ ghi ra một file 3MF toàn diện chứa toàn bộ bố cục bàn in, gán sợi nhựa cho các bản in nhiều màu, tất cả dữ liệu sơn support, và mọi cài đặt slicer. Gửi file duy nhất đó cho một người dùng Bambu Lab khác, và họ có thể tái tạo bản in của bạn một cách hoàn hảo chỉ với một cú nhấp chuột. Đây chính là quy trình làm việc mà 3MF được thiết kế để hướng tới. **Prusa Slicer** cũng có hỗ trợ rất mạnh mẽ. Các file dự án của nó (File > Save Project As) là các file .3mf nhúng các profile in, các mesh chỉnh sửa (modifier meshes), và các cài đặt cho từng đối tượng. Đây là cách đúng đắn để lưu công việc của bạn cho bất cứ thứ gì phức tạp hơn một bản in đơn giản, một vật liệu. Sử dụng tùy chọn 'Export Plate as STL' đơn thuần sẽ vứt bỏ tất cả những thông tin quý giá đó. **Ultimaker Cura** đã hỗ trợ nhập 3MF từ phiên bản 3.0 và xuất từ phiên bản 4.x. Việc triển khai khá ổn cho hình học và các cài đặt cơ bản, mặc dù nó không phải lúc nào cũng bảo toàn các tính năng đặc thù của Cura như modifier meshes một cách đáng tin cậy như định dạng gốc của PrusaSlicer. **Microsoft 3D Builder**, đi kèm với Windows 10 và 11, đọc và ghi 3MF một cách tự nhiên. Điều này không có gì đáng ngạc nhiên, vì Microsoft là đồng sáng lập của Hiệp hội 3MF và là một trong những người ủng hộ định dạng này từ rất sớm. **Fusion 360** xuất 3MF trực tiếp từ không gian làm việc Manufacturing (Make > 3D Print). Nó xử lý đúng đơn vị và có thể xuất các thành phần nhiều thân (multi-body) thành các đối tượng riêng biệt trong một file 3MF duy nhất. Cần nhớ rằng không phải file 3MF nào cũng được tạo ra như nhau. Một file 3MF từ Fusion 360 sẽ chứa dữ liệu hình học nguyên gốc và đơn vị. Một file dự án 3MF từ Bambu Studio chứa những thứ đó cộng với một bộ cài đặt in hoàn chỉnh. Định dạng này hỗ trợ tất cả, nhưng file chỉ chứa nhiều thông tin đến mức mà ứng dụng xuất file đưa vào nó.

3MF vs. STL vs. OBJ: Khi Nào Nên Dùng Định Dạng Nào?

Thế giới in 3D có ba định dạng file chính, và biết nên dùng cái nào là chìa khóa để tránh bực bội. **STL** là lựa chọn an toàn nhất để đảm bảo tính tương thích tối đa. Nếu bạn đang tải một mô hình lên một kho lưu trữ công cộng như Printables hay Thingiverse, STL là định dạng duy nhất mà bạn có thể chắc chắn mọi người đều mở được. Hạn chế lớn nhất của nó cũng chính là điểm mạnh của nó: nó không chứa gì ngoài hình học thô. Không có cài đặt hay màu sắc nào có thể bị hiểu sai. Đối với các bản in đơn giản, một màu mà bạn dự định tự cấu hình mọi thứ trong slicer, STL hoạt động hoàn toàn ổn. **OBJ** là định dạng được ưa chuộng khi bạn cần thông tin màu sắc và texture cho các ứng dụng ngoài in 3D, như rendering hay phát triển game. Nó lưu trữ màu sắc của đỉnh (vertex colors) và tọa độ UV để ánh xạ texture, liên kết đến một file vật liệu MTL và các file hình ảnh (như PNG). Điểm yếu của nó là một tập hợp các file rời rạc phải luôn đi cùng nhau. Bất cứ ai đã từng phải đi tìm một file .mtl hay file texture bị thất lạc đều hiểu nỗi đau này. Bạn phải tự nén chúng lại để chúng không bị tách rời. **3MF** là định dạng phù hợp khi bạn muốn các cài đặt và ý đồ của mình đi cùng với mô hình. Đối với các bản in nhiều màu hoặc nhiều vật liệu, nó là điều bắt buộc. Để chia sẻ một dự án đã được cấu hình đầy đủ với một cộng tác viên, nó là cứu cánh. Nó cũng là định dạng bắt buộc đối với nhiều dịch vụ in chuyên nghiệp, như Multi Jet Fusion của HP. Đây là một quy tắc đơn giản: Sử dụng 3MF cho các file dự án của riêng bạn và để chia sẻ các công việc in hoàn chỉnh với những người trong cùng hệ sinh thái. Sử dụng STL khi công bố hình học cho cả thế giới. Sử dụng OBJ khi bạn có texture map và đích đến của bạn là một trình render, không nhất thiết là một máy in. Các công cụ như CocoConvert có thể dịch hình học giữa các định dạng này. Nhưng không có công cụ nào có thể tự 'sáng tạo' ra các cài đặt in không có trong file nguồn. Chuyển đổi một file STL sang 3MF cho bạn một file 3MF hợp lệ với hình học, nhưng phần print ticket sẽ trống rỗng vì file STL không có gì để cung cấp.

Chuyển đổi STL sang 3MF (và ngược lại): Bạn thực sự nhận được gì?

Chuyển đổi từ STL sang 3MF là một tác vụ phổ biến, nhưng điều quan trọng là phải hiểu điều gì thực sự xảy ra trong quá trình này. Khi bạn chuyển đổi một file STL sang 3MF, trình chuyển đổi sẽ đọc mesh tam giác và viết lại nó theo lược đồ XML của 3MF. Lợi ích đáng kể nhất là định nghĩa đơn vị được ghi rõ ràng. CocoConvert mặc định là milimét, điều mà hầu hết các slicer tiêu dùng đều mong đợi. Bản thân hình học được bảo toàn chính xác—không có tam giác nào bị thay đổi, và không có quá trình sửa lỗi mesh nào diễn ra. Bạn nhận được một file 3MF hợp lệ mà bất kỳ slicer hiện đại nào cũng có thể mở một cách chính xác. Thứ bạn không nhận được là bất cứ thứ gì mà file STL không có. Không có dữ liệu màu sắc, không có gán vật liệu, và không có cài đặt in. File 3MF mới sẽ được nhập vào Bambu Studio hoặc PrusaSlicer như một đối tượng thô, giống hệt như khi bạn nhập file STL gốc. Vậy tại sao phải bận tâm? Việc chuyển đổi là cần thiết cho các quy trình làm việc yêu cầu cụ thể 3MF làm đầu vào, chẳng hạn như một số hệ thống CAD nhất định hoặc các nền tảng quản lý in như SmartStream 3D Build Manager của HP. Quá trình ngược lại—từ 3MF sang STL—là một sự chuyển đổi có mất mát dữ liệu. Bạn nhận được hình học, nhưng tất cả dữ liệu màu sắc, gán vật liệu, bố cục bàn in, và cài đặt in đều bị loại bỏ hoàn toàn. Nếu bạn chuyển đổi một dự án 3MF có nhiều đối tượng, bạn thường sẽ nhận được nhiều file STL (một file cho mỗi đối tượng), đó là cách CocoConvert xử lý. Đây thường là kết quả mong muốn. Đối với chuyển đổi từ 3MF sang OBJ, màu sắc của đỉnh thường được ánh xạ chính xác. Tuy nhiên, nếu file 3MF của bạn sử dụng phần mở rộng Texture 3MF với các file PNG được ánh xạ UV, quá trình này sẽ phức tạp hơn. Luôn kiểm tra lại file đầu ra trong ứng dụng đích của bạn trước khi dựa vào nó cho một quy trình làm việc quan trọng. Không có trình chuyển đổi tự động nào có thể sửa lỗi hình học một cách đáng tin cậy. Nếu file STL nguồn của bạn có các cạnh không liền mạch (non-manifold edges), các pháp tuyến bị đảo ngược (inverted normals), hoặc các lỗ hổng, những khiếm khuyết đó sẽ được chuyển sang file 3MF. Cách làm tốt nhất là chạy mô hình của bạn qua một công cụ sửa lỗi như Meshmixer (Analysis > Inspector) hoặc tính năng sửa lỗi tự động của Microsoft 3D Builder *trước khi* chuyển đổi.

3MF trong các Quy trình Chuyên nghiệp và Công nghiệp

Trong khi những người có sở thích còn đang tranh luận về các định dạng file, giới công nghiệp đã thể hiện sự lựa chọn của mình bằng hành động. 3MF được thiết kế cho các quy trình sản xuất nghiêm túc, và đó là nơi thế mạnh của nó trở nên không thể chối cãi. Các máy in Multi Jet Fusion của HP, những cỗ máy chủ lực đằng sau một số lượng lớn các bộ phận nylon chuyên nghiệp, sử dụng 3MF làm ngôn ngữ mẹ đẻ của chúng. Để in một bộ phận đủ màu trên máy HP Jet Fusion 5200, bạn cần một file 3MF với dữ liệu màu sắc cho từng voxel. Đơn giản là không có quy trình làm việc nào với STL có thể đạt được điều này. Chỉ có thể là 3MF, không có lựa chọn nào khác. Trong môi trường sản xuất, tính năng print ticket là một yếu tố thay đổi cuộc chơi. Một kỹ sư có thể chỉ định chiều cao lớp in 0.1mm để đảm bảo dung sai, infill dạng gyroid để tăng độ bền, và 4 lớp chu vi cho một vách chịu lực, sau đó lưu tất cả vào một file 3MF. File đó được gửi đến xưởng in, và mọi người vận hành đều sản xuất ra một bộ phận giống hệt nhau mà không cần chạm vào một cài đặt nào. Điều này gần như loại bỏ hoàn toàn các lỗi do cấu hình thủ công. Các phần mềm CAD như Autodesk Fusion 360 và PTC Creo xuất 3MF với siêu dữ liệu đơn vị phù hợp, giải quyết cả một loạt vấn đề lớn. Bất cứ ai đã từng chứng kiến một lô sản xuất bị hỏng vì một bộ phận được mô hình hóa bằng inch và một bộ phận khác bằng milimét đều biết điều này quan trọng đến mức nào. Một slicer đoán sai đơn vị có thể dẫn đến các vấn đề lắp ráp thảm họa và lãng phí tiền bạc thực sự. Việc khai báo đơn vị bắt buộc của 3MF ngăn chặn hoàn toàn điều này. Hiệp hội 3MF cũng đang đẩy xa hơn các giới hạn với các phần mở rộng mới. Phần mở rộng Slice cho phép nhúng dữ liệu lớp đã được cắt sẵn, gửi các chỉ dẫn sẵn sàng để in đến máy. Bản nháp phần mở rộng Volumetric nhằm mục đích xác định các dải chuyển tiếp vật liệu liên tục, cho phép tạo ra các bộ phận chuyển từ cứng sang dẻo. Những thứ này không phải để in đồ chơi để bàn; chúng là tương lai của ngành sản xuất bồi đắp chuyên nghiệp.

Cách chuyển đổi file 3MF với CocoConvert

CocoConvert là một công cụ đơn giản, trực tiếp để xử lý các chuyển đổi 3MF. Nó hỗ trợ chuyển đổi từ STL sang 3MF, OBJ sang 3MF, 3MF sang STL, và 3MF sang OBJ. Bạn chỉ cần tải file của mình lên, chọn một định dạng, và download kết quả. Đây là một vài mẹo để đảm bảo việc chuyển đổi của bạn diễn ra suôn sẻ. Khi chuyển từ **STL sang 3MF**, file đầu ra sẽ có đơn vị được đặt là milimét. Đây thường là điều bạn muốn. Tuy nhiên, nếu file STL gốc của bạn được mô hình hóa bằng inch (phổ biến trong một số quy trình làm việc CAD tại Mỹ), nó sẽ được nhập vào slicer với kích thước rất nhỏ. Nếu một bộ phận lẽ ra phải rộng 50mm lại hiện ra là 1.97mm, đó chính là vấn đề. Bạn sẽ cần phải phóng to nó lên 25.4 lần trong slicer, hoặc, tốt hơn nữa, xuất lại file gốc từ phần mềm CAD của bạn bằng milimét trước khi chuyển đổi. Đối với **3MF sang STL**, hãy nhớ rằng một file dự án lớn với nhiều đối tượng sẽ cho ra một file nén ZIP chứa nhiều file STL. Mỗi đối tượng mesh từ file 3MF sẽ trở thành một file STL riêng. Nếu mục tiêu của bạn là một mesh duy nhất đã được gộp lại, bạn sẽ cần sử dụng một công cụ như Meshmixer hoặc Blender để kết hợp chúng sau khi chuyển đổi. CocoConvert xử lý các file lên đến 500MB. Dung lượng này là quá đủ cho hầu hết các mô hình in 3D, nhưng các bản quét có độ phân giải cao hoặc các cụm lắp ráp rất phức tạp đôi khi có thể vượt quá giới hạn này. Nếu bạn có một file có dung lượng đặc biệt lớn, hãy thử giảm độ phân giải của mesh trong ứng dụng nguồn của bạn trước khi xuất file. Điều quan trọng nữa là phải sử dụng đúng công cụ cho đúng việc. CocoConvert là một công cụ chuyển đổi hình học mạnh mẽ, chứ không phải là một slicer hay một tiện ích sửa lỗi mesh. Nó sẽ không tạo ra các cài đặt in hay sửa lỗi hình học. Đối với những tác vụ đó, hãy sử dụng chức năng lưu dự án của slicer hoặc một công cụ sửa lỗi chuyên dụng như Meshmixer. Để dịch định dạng một cách sạch sẽ và đáng tin cậy, CocoConvert là lựa chọn đúng đắn.