Wavefront OBJ — Вікіпедія

OBJ geometry format
Розширення файлу:..obj
MIME-тип:text/plain
Розробник:Wavefront Technologies
Тип формату:3D model format

OBJ (або .OBJ) — формат файлу опису геометрії, вперше створений в Wavefront Technologies для їхнього анімаційного пакету Advanced Visualizer. Це відкритий файловий формат, який взяли були інші розробники 3d редакторів за стандарт.

Формат OBJ дуже простий, і задає тільки геометрію об'єкта, а якщо конкретно, то координати кожної вершини, її текстурні координати, нормалі, і грані, що задаються списками вершин багатокутників. Вершини багатокутників за замовчуванням задаються проти годинникової стрілки, роблячи явне задання нормалей необов'язковим.

Типовий файл OBJ виглядає приблизно так:

 # це коментар  # Список вершин заданих координатами (x,y,z)  v 0.123 0.234 0.345   v ...   ...    #Текстурні координати (u,v).  vt 0.500 -1.352  vt ...  ...    #Нормалі (x,y,z); нормалі можуть бути не нормалізовані.  vn 0.707 0.000 0.707  vn ...  ..    #Кожна грань задається множиною трьох індексів кожен з яких відповідає за вершину/текстуру/нормаль  #координати яких записані в списках вище  #Тому f 1/1/1 2/2/2 3/3/3 це трикутник, що має текстурні координати та нормалі для   #всіх трьох вершин  #ЗАУВАЖЕННЯ: Списки нумеруються починаючи з одиниці.    f v1/vt1/vn1 v2/vt2/vn2 v3/vt3/vn3  f ...    # Чотирикутники, та інші многокутники задаються відповідною кількістю вершин  f v1/vt1/vn1 v2/vt2/vn2 v3/vt3/vn3 v4/vt4/vn4  f ...  ...   # Можуть бути присутніми не усі можливі індекси, наприклад без нормалі  f v1/vt1 v2/vt2 v3/vt3 v4/vt4   # або без текстурних координат  f v1//vn1 v2//vn2 v3//vn3 v4//vn4   # або тільки індекси вершин  f v1 v2 v3 v4     # Матеріали, що описують візуальні аспекти моделі зберігаються в зовнішніх файлах .mtl  mtllib [external .mtl file name]  ...    # Іменовані об'єкти, групи многокутників і матеріалів описуються такими тегами:  o [object name]  ...  g [group name]  ...  usemtl [material name]  ...  # Ім'я матеріалу має збігатися з відповідним іменем матеріалу в файлі .mtl  # Кожен тег застосовується до всіх граней що йдуть після нього, поки не  # зустрінеться інший тег такого ж типу. Текстурні координати можуть не задаватись, якщо   # опис матеріалу не включає текстуру:  f v1//vn1 v2//vn2 v3//vn3  ...    # Згладжування між гранями дозволяється через [[групи згладжування]]  s 1  ...  # А також таке згладжування може бути вимкненим.  s off  ... 

Один файл OBJ може посилатись на кілька зовнішніх матеріалів.

Також підтримуються гладкі поверхні NURBS.

Програми що підтримують формат

[ред. | ред. код]

Див. також

[ред. | ред. код]

Посилання

[ред. | ред. код]