Особенности работы в програм-

Мах трехмерного моделирования и

Системах виртуальной реальности

Этапы создания мира в программах

трехмерного моделирования и системах вир-

туальной реальности имеют свои отличи-

тельные особенности. Программы трехмер-

ного моделирования, как правило, использу-

ются для построения реалистических изобра-

жений высокого качества, напоминающих

фотографии. Поэтому на их создание требу-

ется достаточно длительное время. Исследо-

вание же виртуального мира должно выпол-

няться в реальном времени.

Моделирование

В программах трехмерного моделиро-

вания (3D Studio MAX, Maya, Blender) ис-

пользуется множество способов создания мо-

делей объектов. В простейшем случае объек-

ты строятся из примитивов (кубов, сфер, ко-

нусов, цилиндров, плоскостей и т.д.). После

того, как объект создан, его можно переме-

щать, вращать, масштабировать, копировать,

зеркально отражать и т.д. В случае необходи-

мости применяют модификаторы – функции

изменения формы объекта. Например, для

хаотического перемещения вершин объекта с

образованием впадин и бугров используется

модификатор "Шум". Если применить его к

плоскости, то получится модель ландшафта.

Интересные эффекты возникают в результате

использования модификаторов "Изгиб",

"Скрутка" и др. Многие объекты создаются на

основе сплайнов (линий, окружностей, текста,

многоугольников и др.). Например, с помо-

щью сплайнов можно создать выдавливаемые

объекты или объекты вращения. Булевские

объекты получаются в результате объедине-

ния двух или более трехмерных объектов по

принципам булевой алгебры. Для построения

таких объектов применяют три типа логиче-

ских операций: объединение, пересечение и

исключение. Более сложные объекты можно

создавать с помощью кусков поверхности Бе-

зье. Кусок (patch) поверхности Безье состоит

из двух частей: собственно поверхности и ре-

шётки деформации. Решетка деформации в

свою очередь является совокупностью свя-

занных между собой управляющих точек, ок-

ружающих поверхность куска Безье. Переме-

щение одной или нескольких управляющих

точек решетки деформации влияет на форму

участка поверхности. Таким образом, моде-

лирование на основе кусков Безье подобно

лепке предметов из глины: сначала создается

сетка кусков Безье, которая составляет основу

объекта, а затем производится манипуляция с

управляющими точками для получения нуж-

ной формы. При деформации куска Безье по-

лучается довольно гладкая поверхность. Од-

нако это всего лишь приближенная аппрокси-

мация исходного объекта. Метод на основе

неоднородных рациональных B-сплайнов

(Non-Uniform Rational B-Splines – NURBS)

более точно воспроизводит форму объектов.

В этом методе, как и в случае кусков Безье,

для управления кривизной поверхности ис-

пользуются управляющие точки. Однако ме-

тод NURBS обладает большими возможно-

стями и потому более сложен в использова-

нии. NURBS-поверхности применяются для

создания драпировки, моделей велосипедов,

автомобилей, самолетов, а также персонажей

с высокой степенью детализации.

Сцена виртуального мира создается

аналогичными методами, однако, должна со-

держать, по возможности, небольшое количе-

ство объектов. Это связано с ограничениями

пропускной способности сети. Желательно

использовать объекты, состоящие из неболь-

шого числа многоугольников, так как браузе-

ры отображают их достаточно быстро. Мно-

гие браузеры содержат алгоритмы, которые

позволяют отображать примитивы (конус,

цилиндр, куб, сфера и др.) быстрее, чем объ-

екты, созданные из многоугольников. Объек-

ты сложной формы состоят из большого ко-

личества многоугольников. Если число таких

многоугольников слишком велико, то изо-

бражение мира может оказаться непригод-

ным для использования из-за низкой произ-

водительности вычислительной системы.

Материалы

Программы трехмерного моделирова-

ния и системы виртуальной реальности пре-

доставляют возможность создания собствен-

ных стандартных материалов, которые при-

дают объекту вид ровного куска пластика.

Сходство стандартных материалов с поверх-

ностями объектов реального мира достигается

благодаря использованию различных пара-

метров.

Диффузное отражение – это основной

цвет материала объекта; именно этот цвет на-

блюдается в тех случаях, когда поверхность

объекта освещается прямыми лучами света.

Зеркальное отражение – это цвет бликов, по-

являющихся на поверхности объекта. Непро-

зрачность определяет степень прозрачности

материала. Глянцевитость – способность по-

верхности блестеть при отражении света; па-

раметр глянцевитость используется в сово-

купности с параметром сила блеска, который

указывает, насколько ярким будет пятно зер-

кального блика. Самосвечение задает яркость

свечения материала; в зависимости от значе-

ния этого параметра материал выглядит так,

будто он имеет источник света изнутри.

Объекты можно закрашивать или тони-

ровать с различными уровнями качества за

счет применения различных моделей закраски.

Модель закраски определяет, каким об-

разом алгоритм визуализации будет интер-

претировать цвета материалов и бликов на

поверхности объекта. При использовании за-

краски многоугольников вычисляется цвет од-

ной из точек, расположенных на грани, и при-

нимается за цвет всей грани. Закраска Гуро

визуализирует объекты со сглаживанием ок-

раски граней, так как в этом случае вычисля-

ется цвет каждого пикселя; при этом объект

выглядит гладким, несмотря на фактическое

наличие граней в геометрической модели. В

заскраске Фонга сохраняется г_________сглаживание

рёбер между гранями, как и в закраске Гуро,

однако добавляется формирование зеркаль-

ных бликов, которые придают объекту бле-

стящий или глянцевый вид. Эта модель хоро-

шо подходит для раскрашивания любых ти-

пов пластиковых или блестящих поверхно-

стей. Металлическая закраска подобна моде-

ли Фонга, но при этом поверхность приобре-

тает металлический блеск. Блики и блеск в

этой модели усиленно подчеркиваются.

Правильно выбирая модель закраски

для каждого типа материала, можно обеспе-

чить визуальную правдоподобность сцены.

В отличие от программ трехмерного

моделирования системы виртуальной реаль-

ности имеют ограниченные возможности за-

краски объектов. Большинство браузеров ис-

пользуют только закраску Гуро, так как сце-

ны виртуального мира необходимо генериро-

вать и отображать в реальном времени.

Различные оптические характеристики

поверхностей можно имитировать с помощью

карт текстуры. При этом для имитации та-

ких свойств материалов, как, например, диф-

фузное отражение, используются растровые

изображения (текстурные карты), полученные

методом сканирования фотографий поверхно-

стей реальных предметов либо путем матема-

тического расчета (процедурные карты). На-

пример, чтобы смоделировать дерево, нужно

заменить цвет диффузного отражения мате-

риала на текстурную карту – изображение ре-

альной фактуры распиленного древесного

ствола. После этого можно настроить значе-

ния параметров глянцевитость и сила блеска,

чтобы создать впечатление отполированной

деревянной поверхности.

Программы трехмерного моделирова-

ния обеспечивают возможность имитации це-

лого ряда свойств материалов при помощи

текстурных карт. Например, параметр рель-

ефность позволяет имитировать объемные

неровности на поверхностях объектов, а па-

раметр непрозрачность дает возможность

применять карту текстуры, чтобы указать,

какие участки поверхности объекта будут

прозрачными, а какие нет.

Кроме этого, программы трехмерного

моделирования, в отличие от систем вирту-

альной реальности, поставляются с множест-

вом различных материалов, снабженных па-

раметрами, которые можно корректировать.

Текстуры – узкое место при создании

виртуальных миров. При просмотре сцены в

браузере не воспроизводятся процедурные

текстуры, а также эффекты зеркального отра-

жения, преломления и рельефности. В то же

время в окне браузера видны эффекты блеска

и прозрачности. Использование текстур при-

водит к значительному снижению пропускной

способности сети при передаче больших гра-

фических файлов с высоким разрешением.

Для уменьшения времени загрузки мира не-

обходимо искать всевозможные пути умень-

шения файлов текстур. Поэтому следует при-

менять 16-битовые цветовые палитры или

текстуры из оттенков серого цвета. Много-

кратное использование одной текстуры со-

кращает время, необходимое для отображения

виртуального мира. В результате эксперимен-

тов с освещением и цветом нередко удается

найти приемлемые и эффективные альтерна-

тивы текстурам, что в свою очередь повышает

пропускную способность каналов связи.

Наши рекомендации