Obj: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
м Формат файла: исправил описание текстурных координат (в соответствии с английской вики)
Строка 28: Строка 28:
Формат файлов OBJ — это простой формат данных, который содержит только 3D геометрию, а именно, позицию каждой вершины, связь [[координаты|координат]] [[текстура (трёхмерная графика)|текстуры]] с вершиной, нормаль для каждой вершины, а также параметры, которые создают полигоны.
Формат файлов OBJ — это простой формат данных, который содержит только 3D геометрию, а именно, позицию каждой вершины, связь [[координаты|координат]] [[текстура (трёхмерная графика)|текстуры]] с вершиной, нормаль для каждой вершины, а также параметры, которые создают полигоны.
== Формат файла ==
== Формат файла ==
Строки начинающиеся с решётки(#) это коментарии.
Строки начинающиеся с решётки(#) это комментарии.


# Это коментарий
# Это комментарий


Obj файл содержит несколько типов определения:
Obj файл содержит несколько типов определения:

Версия от 07:43, 23 января 2014

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

OBJ — это формат файлов описания геометрии, разработанный в Wavefront Technologies для их анимационного пакета Advanced Visualizer. Формат файла является открытым и был принят другими разработчиками приложений 3D графики и может быть экспортирован/импортирован в e-Frontier's Poser, Maya, XSI, Blender, MeshLab, Misfit Model 3D, 3D Studio Max и Rhinoceros 3D, Hexagon, CATIA, Newtek Lightwave, Art of Illusion, Modo, Cinema 4D, Zanoza Modeller и т. д. По большей части это общепринятый формат.

Формат файлов OBJ — это простой формат данных, который содержит только 3D геометрию, а именно, позицию каждой вершины, связь координат текстуры с вершиной, нормаль для каждой вершины, а также параметры, которые создают полигоны.

Формат файла

Строки начинающиеся с решётки(#) это комментарии.

  # Это комментарий

Obj файл содержит несколько типов определения:

  # Список вершин, с координатами (x,y,z[,w]), w является не обязательным и по умолчанию 1.0.
  v 0.123 0.234 0.345 1.0
  v ...
  ...
  # Текстурные координаты (u,v[,w]), w является не обязательным и по умолчанию 0.
  vt 0.500 -1.352 [0.234]
  vt ...
  ...
  # Нормали (x,y,z); нормали могут быть не нормированными.
.
  vn 0.707 0.000 0.707
  vn ...
  ...
  # Параметры вершин в пространстве ( u [,v] [,w] ); свободная форма геометрического состояния ( смотри ниже )
  vp 0.310000 3.210000 2.100000
  vp ...
  ...
  # Определения поверхности(сторон) (смотри ниже)
  f 1 2 3
  f 3/1 4/2 5/3
  f 6/4/1 3/5/3 7/6/5
  f ...

Определение сторон

Поверхность определяется в списке вершин, текстурных координат и нормалей. Полигоны такие как квадрат могут быть определены с помощью более 3 вершин/текстурных координат/нормалей.

Вершины

Строка начинающаяся с f представляет собой индекс Поверхности. Каждая сторона может состоять из трех или более вершин.

  f v1 v2 v3 v4 ...

Библиотека материалов

MTL material format
Расширение ..mtl
MIME-тип text/plain и model/obj[1]
Разработчик Wavefront Technologies
Тип формата 3D texture format

Краткий обзор

OBJ является одним из самых популярных форматов передачи 3-х мерной компьютерной геометрии. Информация о внешнем виде объектов(материалы) передается в файлах-спутниках в формате MTL (Material Library). OBJ при необходимости ссылается на такой файл с помощью директивы:

  mtllib [имя внешнего MTL файла]

Введение

MTL является стандартом, установленным компанией Wavefront Technologies. Вся информация представлена в ASCII виде и абсолютно читабельна для человека. Стандарт MTL так же очень популярен и поддерживается большинством пакетов для работы с 3D-графикой.

Информация о простых материалах в файле выглядит следующим образом:

  newmtl название_материала1   # Объявление очередного материала
  # Цвета
  Ka 1,000 1,000 0,000         # Цвет окружающего освещения (желтый)
  Kd 1,000 1,000 1,000         # Диффузный цвет (белый)
  # Параметры отражения
  Ks 0,000 0,000 0,000         # Цвет зеркального отражения (0;0;0 - выключен)
  Ns 10,000                    # Коэффициент зеркального отражения (от 0 до 1000)
  # Параметры прозрачности
  D 0,9                        # Прозрачность указывается с помощью директивы D
  Tr 0,9                       #   или в других реализациях формата с помощью Tr
  #Следующий материал
  newmtl название_материала2
  ...

Наличие всех параметров необязательно. При отсутствие какого-либо параметра программа автоматически устанавливает его по умолчанию.

Ссылки

  1. Controlled Vocabulary for Dublin Core format