SupaVoxel
3D-формати файлів

STL vs OBJ: який формат обрати?

Обирайте STL, коли потрібна лише форма для друку, і OBJ, коли модель містить UV, текстури чи кольори. Будь-який слайсер відкриває обидва формати, і конвертувати їх можна безкоштовно.

  • Виміряні розміри файлів
  • Перевірено роботу зі слайсерами
  • Безкоштовні переглядачі та конвертери
Оновлено жовтень 2026 р.

STL vs OBJ: коротка відповідь

Для одноколірного 3D-друку STL — безпечніший вибір за замовчуванням: це найстаріший і найбільш універсально підтримуваний формат сітки, і він не зберігає нічого, крім трикутників, тож слайсеру нема чого прочитати неправильно. Обирайте OBJ, коли той самий файл має ще й добре виглядати на екрані, у Blender, ігровому рушії чи рендерері, бо OBJ зберігає текстурні координати (UV), нормалі вершин і посилання на файл матеріалу.

Вибір між STL і OBJ насправді залежить від того, що має пережити експорт. Лише форма? STL. Форма плюс зовнішній вигляд поверхні? OBJ. Якщо потрібен колір на самому принтері, жоден із них не ідеальний: використовуйте 3MF, який слайсери читають як призначення філаменту.

Обидва формати мають дві пастки. У них немає поля одиниць виміру, тож модель може надійти у 25,4 раза меншою (збережена в дюймах) або у 1 000 разів меншою (збережена в метрах). І обидва є простими трикутними сітками, тому криві вже розбиті на грані; жоден не зберігає точних CAD-поверхонь, як це робить файл STEP.

Порівняльна таблиця STL vs OBJ

Що кожен формат може і не може зберігати, згідно з описами форматів і тим, як сучасні інструменти насправді їх читають.

STLOBJ
Тип геометріїЛише трикутники; кожен трикутник перелічує власні 3 вершини плюс нормаль граніПолігони (трикутники, квади, n-кутники) зі спільними індексованими вершинами; специфікація також дозволяє NURBS-криві та поверхні, які читають небагато інструментів
Колір / текстураНемає у стандарті; два несумісні вендорські хакі зберігають 15-бітний колір на граньUV-координати у файлі; кольори та зображення текстур через окремий файл .mtl
Одиниці виміруНемає; слайсери припускають міліметриНемає; вирішує програма, що приймає файл
МатеріалиНемаєКарти diffuse, specular, opacity і текстури в .mtl; PBR metal/roughness лише через неофіційні розширення
Розмір файлуBinary: 84 байти + 50 байтів на трикутник. ASCII: приблизно у 6 разів більшийЛише текст; менший за binary STL для самої геометрії, більший щойно записано UV та нормалі
РедагованістьВажко редагувати: мішанина нез’єднаних трикутниківПростіше: зв'язна топологія, групи та квади зберігаються
Підтримка програмного забезпеченняКожен слайсер, CAD- і mesh-інструментКожен слайсер, Blender, Maya, 3ds Max, Unity, Unreal, більшість переглядачів
Використання для друкуФактичний стандарт для одноматеріального друкуПідходить для друку; PrusaSlicer ігнорує його матеріали, Bambu Studio може зіставити його кольори з філаментами

Структура binary STL згідно з описом формату: 80-байтовий заголовок, 4-байтовий лічильник трикутників, далі 50 байтів на трикутник.

Що всередині STL-файлу та OBJ-файлу

STL-файл, створений у 1987 році для перших стереолітографічних машин 3D Systems, — це список трикутників. Кожен трикутник містить вектор нормалі та три кутові точки, записані повністю. Оскільки сусідні трикутники нічим не пов'язані, вершина, спільна для шести трикутників, зберігається шість разів, і програмі, що приймає файл, доводиться відновлювати зв'язність, перш ніж щось ремонтувати чи спрощувати.

OBJ-файл від Wavefront Technologies — це текстовий файл з окремими списками: рядки v для позицій вершин, vt для текстурних координат, vn для нормалей і рядки f, які будують грані, посилаючись на ці списки. Рядок mtllib називає файл .mtl, що містить кольори та шляхи до зображень текстур. Саме через цю індексацію OBJ зберігає сітку зв'язною і може містити UV-розкладки, для яких у STL просто немає місця.

  • STL: один запис на трикутник, більше нічого
  • OBJ: вершини, UV та нормалі перелічені один раз і повторно використовуються
  • Текстури OBJ живуть в окремих файлах, які треба тримати поруч із ним

Розмір файлу STL vs OBJ: одна модель, збережена обома способами

Ми експортували ту саму AI-згенеровану модель — стимпанк-робота-лицаря з нашої галереї з 500 000 трикутників, 287 963 вершинами та кольоровою текстурою 2048 x 2048 — у кожен варіант і виміряли файли.

ЕкспортЩо міститьРозмір
Binary STLТрикутники та нормалі граней25.0 MB
ASCII STLТі самі дані як читабельний текст150.9 MB
OBJ, лише геометріяПозиції вершин і грані21.4 MB
OBJ з UV та нормалямиПозиції, UV, нормалі, грані38.6 MB
OBJ з текстурою, повний набір.obj + .mtl (198 байтів) + текстура PNG (5.0 MB)43.6 MB у 3 файлах
3MF, лише геометрія (для довідки)Стиснута XML-сітка в міліметрах10.3 MB

Розмір binary STL точний: 84 + 50 x 500 000 = 25 000 084 байти. OBJ виграє за самою геометрією, бо кожна з 287 963 вершин записана один раз, а не по разу на трикутник.

OBJ vs STL для 3D-друку

Слайсери сприймають обидва формати як сітку для нарізання, тож коректний файл друкується однаково в будь-якому разі. Різниця в тому, що відкидається. Документація PrusaSlicer каже, що інформацію про матеріали й текстури в OBJ під час імпорту ігнорують, і він читає як ASCII, так і binary STL. UltiMaker Cura перелічує STL та OBJ серед підтримуваних типів моделей разом із 3MF, PLY та glTF. Bambu Studio може читати кольори з OBJ і пропонує зіставити їх із вашими філаментами AMS, що робить OBJ кориснішим за STL на принтері Bambu, хоча 3MF усе ще надійніший шлях для багатоколірного друку.

Друк ламає не формат, а геометрія: отвори, перевернуті нормалі та самоперетини. Проженіть підозрілий файл через безкоштовний інструмент ремонту STL перед нарізанням; він приймає сітку й повертає герметичний STL.

  • Та сама сітка, той самий шлях інструмента: формат не змінює якість друку
  • Більшість слайсерів відкидає текстури в OBJ
  • Для кольорового друку експортуйте 3MF

Коли використовувати STL, а коли OBJ

Вирішіть STL vs OBJ за тим, куди файл вирушить далі.

Одноколірний FDM- або смоловий друк

Використовуйте STL. Його приймає кожен слайсер і сервіс друку, і немає побічних файлів, які можна загубити. Це також формат, який найчастіше зустрічається на сайтах моделей, як-от Printables і Thingiverse.

Модель із текстурами для Blender або гри

Використовуйте OBJ, а краще GLB, який пакує текстури в один файл. OBJ зберігає UV, тож текстура лягає туди, куди треба.

Багатоколірний друк на Bambu AMS або Prusa MMU

Використовуйте 3MF. Якщо у вас є лише OBJ з кольорами, Bambu Studio може їх зіставити, але 3MF зберігає призначення філаментів для кожної частини безпосередньо.

Передавання деталі фахівцю з механообробки або CAD-користувачу

Використовуйте STEP, якщо він у вас є. Обидва сіткові формати втрачають точні криві, потрібні CAD-користувачу для редагування отворів і скруглень.

Швидкий перегляд для поширення

OBJ відкривається майже будь-де з кольором. Якщо його треба вставити на вебсторінку, конвертуйте в GLB для одного компактного файлу.

Архівування версії, готової до друку

Тримайте binary STL поруч із вашим проєктом 3MF. Це єдиний формат, який кожен інструмент відкриватиме й через десять років.

Конвертація між STL і OBJ без сюрпризів

Конвертація без втрат для форми в одному напрямку й із втратами для зовнішнього вигляду в іншому.

Робіть
  • Тримайте .mtl і зображення текстур в одній папці з OBJ і заархівуйте їх разом, коли ділитеся
  • Перевірте розмір моделі одразу після імпорту; якщо він відрізняється у 25,4 раза, файл збережено в дюймах
  • Використовуйте binary STL, ніколи ASCII, якщо інструмент спеціально не просить текст
  • Перегляньте результат у переглядачі, перш ніж нарізати чи надсилати
Уникайте
  • Не чекайте, що STL → OBJ поверне кольори чи UV; їх ніколи не було в STL
  • Не надсилайте голий .obj, коли важливий вигляд; без .mtl він відкриється сірим
  • Не вважайте, що менший файл означає нижчу якість; геометрія OBJ менша, бо вершини спільні
  • Не перейменовуйте .obj на .stl; внутрішня структура інша, і файл не завантажиться

FAQ

Часті запитання

Що краще для 3D-друку: STL чи OBJ?

Для одноколірного друку вони дають той самий шлях інструмента, тож обирайте STL для найширшої сумісності та найменшої кількості побічних файлів. OBJ допомагає лише тоді, коли важливі кольори: Bambu Studio може зіставити кольори OBJ з філаментами AMS, а PrusaSlicer ігнорує матеріали OBJ. Для надійного багатоколірного друку на будь-якому слайсері експортуйте 3MF, який зберігає призначення філаментів для кожної частини, а не покладається на файли текстур чи матеріалів.

Чи зберігає OBJ колір і текстури?

Так, але не всередині самого .obj. OBJ містить UV-координати й посилається на файл матеріалу .mtl, а .mtl посилається на зображення текстур, як-от PNG. Усі три мають передаватися разом. Якщо ви отримали лише .obj, модель відкриється сірою. Для одного файлу з текстурами використовуйте GLB замість OBJ.

Чому мій STL-файл набагато більший за OBJ?

STL повторює кожну вершину для кожного трикутника, що її торкається, а OBJ перелічує кожну вершину один раз і посилається на неї. У нашому тесті з 500 000 трикутників binary STL мав 25.0 MB, а OBJ лише з геометрією — 21.4 MB. ASCII STL значно гірший — 150.9 MB. Щойно додаєте UV та нормалі, OBJ зростає до 38.6 MB, і розрив змінюється на протилежний.

Чи можна конвертувати STL в OBJ без втрати якості?

Так. STL в OBJ зберігає кожен трикутник і позицію точно, а OBJ зазвичай буде трохи меншим, бо спільні вершини об'єднуються. Чого не повернути — це колір або UV, адже в STL їх ніколи не було. Наш безкоштовний конвертер STL в OBJ працює у браузері та показує 3D-перегляд перед завантаженням.

STL чи OBJ: що краще для Blender?

Blender імпортує обидва, але OBJ краще підходить, коли в моделі є текстури, бо UV та слоти матеріалів зберігаються. STL надходить як один сірий меш без UV-розгортки. Якщо ви переносите текстуровану модель у Blender, GLB ще простіший за OBJ, бо текстури вбудовані, а PBR-матеріали напряму відповідають Principled BSDF у Blender.

Чому моя модель імпортується крихітною або величезною?

Ні STL, ні OBJ не зберігають одиниці виміру, тож програма-отримувач здогадується. Слайсери припускають міліметри; модель, збережена в дюймах, надходить у 25,4 раза меншою, а збережена в метрах — у 1000 разів меншою. PrusaSlicer і Bambu Studio пропонують конвертувати, коли модель виглядає так, ніби її зберегли в дюймах. Інакше масштабуйте з правильним коефіцієнтом перед нарізанням.

Чи може файл STL мати колір?

У стандарті — ні. Два варіанти від виробників, від VisCAM/SolidView і від Materialise Magics, ховають 15-бітний колір у двох вільних байтах кожного трикутника, але вони зберігають канали у протилежному порядку, і більшість слайсерів ігнорують обидва. Якщо потрібен колір на надрукованій деталі, використовуйте 3MF; якщо потрібен на екрані — OBJ або GLB.

Як отримати STL або OBJ з фото?

Завантажте зображення в студію image to 3D від SupaVoxel, і ви отримаєте модель без текстури, зазвичай менш ніж за хвилину, або з текстурою — зазвичай за 3–5 хвилин. Нові акаунти отримують 3 безкоштовні кредити й можуть безкоштовно завантажити GLB; експорт у STL, OBJ і 3MF доступний у платних планах. Також можна конвертувати безкоштовний GLB у STL або OBJ нашими браузерними конвертерами.

Почати безкоштовно

STL чи OBJ — визначилися? Тепер створіть модель

Перетворіть фото на 3D-модель, зазвичай менш ніж за хвилину, потім експортуйте її як STL, OBJ або 3MF на платному плані чи переглядайте й конвертуйте файли тут безкоштовно.

Без картки · 3 безкоштовні кредити на старт