Модернизация процесса трёхмерного моделирования за счёт применения процедурных структурных текстур
Автор: Рясков А.С.
Журнал: Теория и практика современной науки @modern-j
Рубрика: Основной раздел
Статья в выпуске: 12-2 (18), 2016 года.
Бесплатный доступ
В статье рассматривается новый подход к текстурированию материалов в ходе трёхмерного моделирования. Приводится краткое описание процесса трёхмерного моделирования, показываются его узкие места и предлагается увеличение производительности 3D-художников за счёт введения в процесс процедурных структурных текстур. Описываются достоинства и недостатки выдвинутого метода, предлагается план работ по улучшению описанного подхода.
Трёхмерное моделирование, сапр, текстурирование, процедурные текстуры, процедурные структурные текстуры
Короткий адрес: https://sciup.org/140267925
IDR: 140267925
Текст научной статьи Модернизация процесса трёхмерного моделирования за счёт применения процедурных структурных текстур
В 21 веке широкое распространение получило трёхмерное моделирование. Оно применяется в разнообразных сферах деятельности: от проектирования интерьера и моделирования обстановки в кинофильмах до САПР-программ для построения сложных объектов. Такой охват объясняется тем, что компании стремяться к сокращению издержек на построение реальных объектов (например, объектов антуража в кинофильмах или узлов будущей модели самолёта). Широкое применение 3D-моделирования стало возможным после того, как было достигнуто приемлемое качество визуализации 3D-объектов, позволяющее зрителю 3D-сцены не воспринимать построенные объекты как нечто чужеродное, а соотносить их с реальностью. Однако за всеми преимуществами трёхмерного моделирования на сегодняшний день остаются нерешённые задачи [1]. Среди них — соблюдение баланса между реалистичностью объекта и временем создания (а значит и ресурсами, затраченными на его производство). С одной стороны, можно быстро построить трёхмерную сцену, не задумываясь о реалистичности трёхмерных объектов, их текстур, анимации — это будет быстро и недорого, однако для потребителя это, в большинстве случаев, будет неприемлемо. С другой стороны — если построить качественную сцену, нанеся качественные текстуры на объекты, пригласить лучших специалистов (художников по текстурам, аниматоров), 3D-сцена получится подходящей для демонстрации конечному пользователю, но и ресурсов в работу будет вложено намного больше. Одной из многих статей расходов в трёхмерном моделировании является подбор и нанесение текстур на трёхмерный объект. У крупных компаний с этим этапом проблем, обычно, не возникает, но небольшие компании (например, занимающиеся дизайном интерьеров) испытывают некоторые сложности:
-
- сложность выбора текстуры. Не всегда удаётся найти в свободном доступе текстуру, которая удовлетворяет потребностям ситуации — рисунку, качеству, разрешению изображения. Содержать же специалиста по текстурам (художника, фотографа) у некрупных компаний нет возможности;
-
- сложность нанесения текстуры. Так как текстура — это двумерный файл изображения, то очевидно, что при любом варианте наложения её на объект будут видны «швы» на местах соединения двух противоположных концов изображения. Этого эффекта иногда удаётся избежать, используя так называемые «бесшовные» текстуры. Однако, данные текстуры требуют специального изготовления и не всегда есть в свободном доступе (см. предыдущий пункт данного списка). Кроме этого, для того, чтобы визуально оценить, выглядит ли сцена натурально с данной текстурой, 3D-дизайнер должен пройти итеративный процесс «отладки» конечного изображения путём повторяющейся отрисовки (rendering) изображения и исправления возможных недочётов. Отрисовка сцены — затратный процесс, требующий времени и мощного оборудования;
-
- другие ограничения, которые накладывает концепция построения объектов, основанная на многоугольниках (polygons).
В настоящей работе предлагается для увеличения производительности работников сферы 3D-моделирования внедрить в процесс разработки трёхмерной сцены процедурные структурные текстуры (ПСТ).
Процедурные структурные текстуры — это дальнейшее развитие стандартных двумерных текстур. ПСТ являются трёхмерными сущностями и описывают состояние объекта в любой его точке, а не только на поверхности (как двумерные текстуры).
ПСТ используют аппарат математических функций и являются трёхмерным продолжением двумерных процедурных текстур, которые были популярны в начале 2000-х годов [2, 3].
Следует сказать, что на данном этапе ПСТ предлагаются к использованию только для создания природных материалов (известняк, гранит, мрамор).
Процедурная структурная текстура состоит из двух файлов — файла механизма образования и файла параметров образования. Первый файл содержит математические функции изменения параметров в толще материала, а второй — параметры для этих функций.
Наложение ПСТ происходит следующим образом:
-
1. Извлекаются функции из файла механизма образования.
-
2. Извлекаются параметры образования из соответствующего файла.
-
3. Параметры подставляются в функции и идёт построение графиков данных функций в виртуальном (невидимом) кубе. Размеры куба задаются исходя из того, чтобы внутрь него можно было поместить целевой трёхмерный объект (к которому применяется текстура).
-
4. Происходит итеративный расчёт точек пересечения каждого треугольника трёхмерного объекта (полигональная модель построения объектов [4]) с любой из функций в трёхмерном кубе. Если очередная функция и очередной треугольник имеют общую точку, то точка пересечения на поверхности треугольника принимает значение параметра, за который отвечает функция. Например, если функция отвечает за серый цвет, то точка пересечения будет
серой. Здесь следует отметить, что для образования сложного многокомпонентного природного материала необходимо задать множество функций.
Преимущества данного подхода следующие:
-
- малый размер ПСТ по сравнению с двумерными файлами изображений;
-
- возможность масштабирования для объекта любого размера;
-
- отсутствие необходимости накладывать новую текстуру при срезе объекта по причине того, что ПСТ описывает свойства структуры вещества, а не его поверхности;
-
- возможность с лёгкостью создавать новые похожие материалы, изменяя только файл параметров образования текстуры.
Стоит отметить и главный недостаток выдвинутого предположения — это сложность создания набора математических функций, которые бы визуально точно отражали естественный вид материала [5].
Для демонстрации работоспособности подхода была создана программа, выполняющая сечение трёхмерного виртуального куба, в котором описаны математические функции для материала «мрамор». Результат работы программы показан на рисунке 1.

Рисунок 1. Сечение ПСТ для материала «мрамор».
В настоящей статье был продемонстрирован новый подход к нанесению текстур на трёхмерные объекты — использование процедурных структурных текстур. В дальнейшем планируется создание коллекции природных материалов, для того, чтобы данный метод можно было применять в условиях реального производства трёхмерных сцен.
Список литературы Модернизация процесса трёхмерного моделирования за счёт применения процедурных структурных текстур
- Weinhaus, F. Texture mapping 3D models of Real-World Scenes / F. Weinhaus, V. Devarajan // Journal ACM Computing Surveys, Vol. 29, No. 4. - 1997. - P. 325-365.
- Kachscovsky, B. Interactive methods for procedural texture generation with noise / B. Kachscovsky // Reprocentralen ITC: Uppsala University. - 2015. - P. 36.
- Biasotti, S. Retrieval and classification methods for textured 3D models: a comparative study / S. Biasotti // The Visual Computer, Vol. 32, No. 2. - 2016. - P. 217-241.
- Pan, R. Detection of Edges from Polynomial Texture Maps / R. Pan // Journal 3D Research. - 2016. - P. 8.
- Dong, J. Capture and Synthesis of 3D Surface Texture / J. Dong, M. Chantler // International Journal of Computer Vision, Vol. 62, No. 1. - 2005. - P. 177-194.