Obj

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

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.

Програми що підтримують формат[ред.ред. код]

Дивіться також[ред.ред. код]

Посилання[ред.ред. код]


Комп'ютер Це незавершена стаття про комп'ютери.
Ви можете допомогти проекту, виправивши або дописавши її.