8 самых распространенных форматов 3D-файлов в 2019 году

Какие форматы файлов 3D существуют? Как их можно сравнить? Какие форматы лучше использовать? Мы расскажем 0 8 наиболее распространенных форматов файлов 3D, используемых сегодня: STL, OBJ, FBX, COLLADA, 3DS, IGES; STEP и VRML / X3D.

Формат файла 3D используется для хранения информации о 3D-моделях. Возможно, вы слышали о самых популярных форматах STL, OBJ, FBX, COLLADA и т. Д. Они широко используются в 3D-печати, видеоиграх, фильмах, архитектуре, науке, медицине, инженерии и науках о Земле. Каждая отрасль имеет свои собственные популярные форматы файлов 3D по историческим и практическим причинам. В этой статье мы узнаем о форматах 3D-файлов и углубимся в 8 наиболее распространенных форматов 3D-файлов.

Что такое 3D формат файла?

Основное назначение формата 3D-файлов — хранить информацию о 3D-моделях в виде простого текста или двоичных данных. В частности, они кодируют геометрию , внешний вид , сцену и анимацию 3D-модели . Геометрия модели описывает ее форму. Под внешним видом мы подразумеваем цвета, текстуры, тип материала и т.д. Сцена трехмерной модели включает в себя расположение источников света, камер и периферийных объектов. Наконец, анимация определяет, как движется 3D-модель.

Однако не все форматы файлов 3D хранят все эти данные. 3D-форматы файлов, такие как STL, хранят только геометрию 3D-модели и игнорируют все остальные атрибуты. С другой стороны, формат COLLADA хранит все. STL и COLLADA — это только два из множества форматов 3D-файлов. По  оценкам некоторых эспертов, в настоящее время используются сотни форматов 3D-файлов!

Сколько существует форматов 3D файлов?

Существуют сотни форматов файлов 3D
Популярные 3D форматы

Проблема с форматами файлов 3D заключается в том, что их буквально сотни . Каждый производитель программного обеспечения САПР, такой как AutoDesk и Blender, имеет собственный запатентованный формат, оптимизированный для их программного обеспечения. Поэтому, если вы используете AutoCAD, вы получите файл DWG. Если вы используете Blender, вы получите файл BLEND.

Запатентованные форматы файлов 3D препятствуют совместимости

Тем не менее, наличие большого количества проприетарных форматов файлов является большой проблемой. Предположим, вы используете AutoCAD (это продукт AutoDesk), а ваш друг использует Blender. Предположим, что вы также хотите поделиться своей 3D-моделью со своим другом.

Это не так просто. Ваше программное обеспечение AutoCAD дает вам файл DWG, потому что это собственный формат AutoCAD. Но программное обеспечение вашего друга, Blender, может работать только с файлом BLEND. Это означает, что вы не можете совместно работать над одной 3D-моделью.

Нейтральные форматы файлов 3D решают множество проблем

Названия и описания популярных 3D форматовДля решения проблемы совместимости были изобретены нейтральные или открытые форматы в качестве промежуточных форматов для преобразования между двумя проприетарными форматами. Естественно, эти форматы стали очень популярными сейчас.

Два известных примера нейтральных форматов — STL (с расширением .STL) и COLLADA (с расширением .DAE). Они широко используются для обмена моделями в программном обеспечении САПР. Если вы хотите поделиться своей 3D-моделью, вы преобразуете файл DWG в файл COLLADA в процессе, называемом экспортом, и даете вашему другу файл COLLADA. Ваш друг берет файл COLLADA и импортирует его в Blender, где файл COLLADA преобразуется в собственный формат BLEND. Таким образом, вы можете продолжать использовать другое программное обеспечение и сотрудничать с другими.

Проприетарная и нейтральная — одна из самых важных дихотомий в мире форматов файлов 3D. В настоящее время большинство программ для 3D-моделирования поддерживает чтение и запись популярных нейтральных форматов. Кроме того, большинство программного обеспечения также поддерживает чтение и запись в подмножество проприетарных форматов, которые настолько популярны, что их нельзя игнорировать. Мы обсудим 8 таких 3D форматов файлов в этой статье. Вот список, где форматы файлов 3D помечены их типом.

Но прежде чем подробно обсудить каждый из этих форматов, мы сначала рассмотрим общие особенности формата 3D-файлов и обсудим важные вещи, которые следует учитывать при выборе формата для вашего проекта.

Основные характеристики 3D форматов файлов

3D-форматы файлов: геометрия кодирования 3D-модели

Мелкая треугольная сетка приблизительно кодирует геометрию поверхности этой 3D-модели

Каждая 3D-модель имеет уникальную геометрию, и возможность кодирования этой геометрии можно считать самой основной особенностью формата 3D-файла. Все форматы файлов 3D поддерживают это — в противном случае они не будут считаться форматами файлов 3D.

Существует три различных способа кодирования геометрии поверхности, каждый из которых имеет свои сильные и слабые стороны. Их называют приближенной сеткой , точной сеткой и конструктивной геометрией твердого тела (CSG).

Геометрия формата 3d-файла: приближенная сетка

В этом кодировании поверхность 3D-модели сначала покрывается сеткой из крошечных воображаемых многоугольников. Треугольники являются наиболее часто используемой формой. Вершины покрывающих треугольников и внешний вектор нормали к треугольникам хранятся в файле. Это представляет геометрию поверхности целевой модели.

Вершины и нормаль к каждой треугольной грани, составляющей сетку, сохраняются в файле.

Процесс покрытия поверхности непересекающимися геометрическими формами также известен как «тесселяция». Следовательно, эти форматы файлов также называются тесселяционными форматами.

Треугольники приближают гладкую геометрию поверхности. Следовательно, это приблизительный формат. Приближение становится лучше, когда треугольники становятся меньше. Тем не менее, чем меньше треугольников, тем больше нужно треугольников, чтобы покрыть поверхность плиткой. Это подразумевает, что файл должен хранить большее количество вершин и нормальных векторов. Таким образом, лучшее приближение достигается за счет увеличения размера файла.

Идеальная  сферическая поверхность слева аппроксимируется тесселяциями. На рисунке справа используются большие треугольники, в результате чего получается грубая модель. На рисунке в центре используются меньшие треугольники и достигается более плавное приближение.

Приблизительные или тесселяционные форматы лучше всего использовать в ситуациях, когда вам не нужно сверхтонкое разрешение 3D-модели. Хорошим примером является 3D-печать. 3D-принтеры не могут печатать с разрешением выше определенного разрешения, и поэтому этот тип файлов формата 3D-печатиидеально подходит для работы. На самом деле, самый популярный формат 3D-печати файлов STL действительно принадлежит к этому классу форматов файлов.

 

Геометрия формата 3d файлов: точная сетка

Пример патчей NURBS, точно кодирующих геометрию криволинейной поверхности. Красные точки — это контрольные точки NURBS.

Конечно, бывают ситуации, когда приблизительного кодирования трехмерной модели недостаточно и требуется точное кодирование геометрии поверхности. Например, при конструировании корпуса самолета, в частности круглого корпуса, дискретная многоугольная сетка не будет работать. Хотя модель может хорошо смотреться при небольших разрешениях, плоские грани и острые углы будут видны близко.

Точные форматы файлов позволяют обойти эту проблему, используя неоднородные исправления Rational B-Spline (или NURBS) вместо полигонов. Эти параметрические поверхности состоят из небольшого количества взвешенных контрольных точек и набора параметров, называемых узлами. Из узлов, поверхность может быть вычислена математически путем плавной интерполяции по контрольным точкам.

Эти поверхности выглядят гладкими в любом масштабе и могут точно копировать геометрию поверхности небольшой части 3D-модели. Тем не менее, всегда есть компромисс. Хотя точная сетка является точной при любом разрешении, они отображаются медленнее, и их следует избегать в приложениях, где важен быстрый рендеринг.

3d-формат файла геометрия 3: конструктивная сплошная геометрия или csg

Конструктивная геометрия твердого тела в действии при построении гантели в Tinkercad

Наконец, есть еще один тип файлового формата, который вообще не включает меши. В этом формате трехмерные фигуры строятся путем выполнения логических операций (сложение или вычитание) примитивных фигур, таких как кубики, сферы и т. Д. Например, для создания гантели можно просто взять две сферы и добавить между ними соединительный цилиндрический стержень. Если вы когда-либо использовали программное обеспечение САПР, то вы видели это в действии, потому что большинство из них используют этот принцип.

Конструктивная геометрическая форма отлично подходит для проектирования трехмерных моделей и очень удобна для пользователя. Другое большое преимущество заключается в том, что каждый отдельный шаг редактирования (сложение, вычитание, преобразования примитивных форм) сохраняется в этом формате 3D-файла. Поэтому можно отменить и повторить любой шаг в любое время.

Очевидно, что если вы преобразуете этот формат в формат на основе сетки, вы потеряете информацию об отдельных шагах редактирования.

3D форматы файлов: внешний вид

Вторая важная особенность форматов файлов 3D — это возможность хранить информацию, связанную с внешним видом. Во многих приложениях внешний вид 3D-модели имеет первостепенное значение. Например, никто не хочет играть в Need For Speed ​​с тусклыми бесцветными машинами. Автомобили лучше быть красочными и блестящими! Цвет и блеск автомобиля являются примерами свойств, связанных с внешним видом. Проще говоря, внешний вид описывает свойства поверхности, такие как тип материала, текстура, цвет и т. Д. Это решает, как будет выглядеть модель при визуализации. Информация о внешнем виде может быть закодирована двумя различными способами.

Внешний вид формата файла 3d: наложение текстуры

Иллюстрация того, как наложение текстуры используется для кодирования цвета и текстурной информации одной стороны куба

В отображении текстуры каждая точка на поверхности 3D-модели (или полигональная сетка) отображается на двухмерное изображение. Координаты 2D-изображения имеют такие атрибуты, как цвет и текстура. При рендеринге 3D-модели каждой точке поверхности назначается координата в этом 2-мерном изображении. Вершины сетки отображаются в первую очередь. Затем другим точкам присваиваются координаты путем интерполяции между координатами вершин.

Большинство форматов файлов 3D поддерживают наложение текстур. В этом случае 2D-изображение, содержащее информацию о текстуре, должно храниться в одном и том же файле или отдельно в другом файле.

Внешний вид 3d-файла: атрибуты лица

Прозрачная 3D модель стула. Прозрачность кодируется как свойство каждого отдельного аспекта.

Другим распространенным способом хранения информации о текстуре является назначение каждой грани сетки набора атрибутов. Общие атрибуты включают цвет, текстуру и тип материала.

Кроме того, поверхность может иметь зеркальный компонент,указывающий цвет и интенсивность истинных зеркальных отражений источников света и других близлежащих поверхностей. Поверхности могут быть прозрачными или полупрозрачными. Это кодируется пропускающим компонентом, описывающим цвет и интенсивность света, который проходит через поверхность. Прозрачные поверхности обычно искажают проходящий через них свет. Это искажение представлено показателем преломления , связанным с типом материала модели.

Форматы файлов 3D: информация о сцене

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

Некоторые форматы файлов 3D имеют возможность кодировать информацию об источниках света, как показано на этом рисунке.
Некоторые форматы файлов 3D имеют возможность кодировать информацию об источниках света, как показано на этом рисунке.

Камера определяется четырьмя параметрами: увеличением и главной точкой, местоположением, направлением камеры и стрелкой, указывающей, какое направление «вверх».

Кодирование источника света зависит от природы источника света. В простейшем случае точечного источника нам просто нужно сохранить местоположение источника, его цвет и его интенсивность.

Пространственные отношения между 3D-моделью и другими соседними моделями также иногда сохраняются. Это особенно важно, если модель состоит из нескольких частей, которые должны быть выложены определенным образом для создания сцены.

Стоит отметить, что большинство форматов файлов 3D часто не поддерживают информацию сцены. Это связано с практическими соображениями. Когда дело доходит до компоновки, перед сохранением модели всегда можно убедиться, что части модели расположены в правильном месте. В этом случае формат файла не должен явно определять отношения между частями. Атрибуты камеры и освещения также можно игнорировать, поскольку ожидается, что конечные пользователи в любом случае изменят положение камеры при перемещении по сцене.

3D форматы файлов: анимация

Некоторые форматы 3D-файлов имеют возможность хранить анимации 3D-модели. Это очень полезно при разработке игр или создании фильмов, где интенсивно используются анимации.

Анимация формата 3d файлов: скелетная анимация

Самый популярный способ анимации трехмерной модели называется «скелетная анимация». В скелетной анимации каждая модель связана с базовым скелетом. Скелет состоит из иерархии виртуальных «костей». Движение костей выше в иерархии (родительские кости) влияет на кости ниже в иерархии (дочерние кости). Это похоже на человеческое тело, где движение голени влияет на положение пальцев.

Важно понимать, что эти кости — не настоящие кости, а просто математические конструкции, которые помогают аниматору определять движения в модели. Кости обычно представлены матрицей 4 × 3, где первые три столбца представляют вращение, масштаб и сдвиг кости. Последний столбец является переводом относительно мирового пространства родителя.

В дополнение к преобразованию каждая кость имеет уникальный идентификатор и связана с подмножеством сетки, кодирующей геометрию поверхности. Это подмножество перемещается вместе с виртуальной костью. Кости связаны «суставами». Суставы вводят ограничения в возможные преобразования, связанные с костью, тем самым ограничивая то, как кость может двигаться относительно своего родителя. Это снова похоже на человеческое тело — локоть может вращаться только вокруг указанной оси, в то время как шаровое соединение между бедром и тазом позволяет вращаться вокруг всей оси.

Вот классное и короткое видео, объясняющее, как кости и суставы можно использовать для создания основных анимаций в Cinema4D.

Анимация формата 3d файлов: техника анимации

Существует много разных способов хранения анимации скелетных структур. Наиболее важными методами являются прямая кинематика, обратная кинематика и ключевые кадры. Вы можете прочитать намного больше о технике анимации и кодировках в этой дипломной работе Маркуса Лундгрена .

источник https://all3dp.com/3d-file-format-3d-files-3d-printer-3d-cad-vrml-stl-obj

 

 

Back to Top