Мах трехмерного моделирования и
Системах виртуальной реальности
Этапы создания мира в программах
трехмерного моделирования и системах вир-
туальной реальности имеют свои отличи-
тельные особенности. Программы трехмер-
ного моделирования, как правило, использу-
ются для построения реалистических изобра-
жений высокого качества, напоминающих
фотографии. Поэтому на их создание требу-
ется достаточно длительное время. Исследо-
вание же виртуального мира должно выпол-
няться в реальном времени.
Моделирование
В программах трехмерного моделиро-
вания (3D Studio MAX, Maya, Blender) ис-
пользуется множество способов создания мо-
делей объектов. В простейшем случае объек-
ты строятся из примитивов (кубов, сфер, ко-
нусов, цилиндров, плоскостей и т.д.). После
того, как объект создан, его можно переме-
щать, вращать, масштабировать, копировать,
зеркально отражать и т.д. В случае необходи-
мости применяют модификаторы – функции
изменения формы объекта. Например, для
хаотического перемещения вершин объекта с
образованием впадин и бугров используется
модификатор "Шум". Если применить его к
плоскости, то получится модель ландшафта.
Интересные эффекты возникают в результате
использования модификаторов "Изгиб",
"Скрутка" и др. Многие объекты создаются на
основе сплайнов (линий, окружностей, текста,
многоугольников и др.). Например, с помо-
щью сплайнов можно создать выдавливаемые
объекты или объекты вращения. Булевские
объекты получаются в результате объедине-
ния двух или более трехмерных объектов по
принципам булевой алгебры. Для построения
таких объектов применяют три типа логиче-
ских операций: объединение, пересечение и
исключение. Более сложные объекты можно
создавать с помощью кусков поверхности Бе-
зье. Кусок (patch) поверхности Безье состоит
из двух частей: собственно поверхности и ре-
шётки деформации. Решетка деформации в
свою очередь является совокупностью свя-
занных между собой управляющих точек, ок-
ружающих поверхность куска Безье. Переме-
щение одной или нескольких управляющих
точек решетки деформации влияет на форму
участка поверхности. Таким образом, моде-
лирование на основе кусков Безье подобно
лепке предметов из глины: сначала создается
сетка кусков Безье, которая составляет основу
объекта, а затем производится манипуляция с
управляющими точками для получения нуж-
ной формы. При деформации куска Безье по-
лучается довольно гладкая поверхность. Од-
нако это всего лишь приближенная аппрокси-
мация исходного объекта. Метод на основе
неоднородных рациональных B-сплайнов
(Non-Uniform Rational B-Splines – NURBS)
более точно воспроизводит форму объектов.
В этом методе, как и в случае кусков Безье,
для управления кривизной поверхности ис-
пользуются управляющие точки. Однако ме-
тод NURBS обладает большими возможно-
стями и потому более сложен в использова-
нии. NURBS-поверхности применяются для
создания драпировки, моделей велосипедов,
автомобилей, самолетов, а также персонажей
с высокой степенью детализации.
Сцена виртуального мира создается
аналогичными методами, однако, должна со-
держать, по возможности, небольшое количе-
ство объектов. Это связано с ограничениями
пропускной способности сети. Желательно
использовать объекты, состоящие из неболь-
шого числа многоугольников, так как браузе-
ры отображают их достаточно быстро. Мно-
гие браузеры содержат алгоритмы, которые
позволяют отображать примитивы (конус,
цилиндр, куб, сфера и др.) быстрее, чем объ-
екты, созданные из многоугольников. Объек-
ты сложной формы состоят из большого ко-
личества многоугольников. Если число таких
многоугольников слишком велико, то изо-
бражение мира может оказаться непригод-
ным для использования из-за низкой произ-
водительности вычислительной системы.
Материалы
Программы трехмерного моделирова-
ния и системы виртуальной реальности пре-
доставляют возможность создания собствен-
ных стандартных материалов, которые при-
дают объекту вид ровного куска пластика.
Сходство стандартных материалов с поверх-
ностями объектов реального мира достигается
благодаря использованию различных пара-
метров.
Диффузное отражение – это основной
цвет материала объекта; именно этот цвет на-
блюдается в тех случаях, когда поверхность
объекта освещается прямыми лучами света.
Зеркальное отражение – это цвет бликов, по-
являющихся на поверхности объекта. Непро-
зрачность определяет степень прозрачности
материала. Глянцевитость – способность по-
верхности блестеть при отражении света; па-
раметр глянцевитость используется в сово-
купности с параметром сила блеска, который
указывает, насколько ярким будет пятно зер-
кального блика. Самосвечение задает яркость
свечения материала; в зависимости от значе-
ния этого параметра материал выглядит так,
будто он имеет источник света изнутри.
Объекты можно закрашивать или тони-
ровать с различными уровнями качества за
счет применения различных моделей закраски.
Модель закраски определяет, каким об-
разом алгоритм визуализации будет интер-
претировать цвета материалов и бликов на
поверхности объекта. При использовании за-
краски многоугольников вычисляется цвет од-
ной из точек, расположенных на грани, и при-
нимается за цвет всей грани. Закраска Гуро
визуализирует объекты со сглаживанием ок-
раски граней, так как в этом случае вычисля-
ется цвет каждого пикселя; при этом объект
выглядит гладким, несмотря на фактическое
наличие граней в геометрической модели. В
заскраске Фонга сохраняется г_________сглаживание
рёбер между гранями, как и в закраске Гуро,
однако добавляется формирование зеркаль-
ных бликов, которые придают объекту бле-
стящий или глянцевый вид. Эта модель хоро-
шо подходит для раскрашивания любых ти-
пов пластиковых или блестящих поверхно-
стей. Металлическая закраска подобна моде-
ли Фонга, но при этом поверхность приобре-
тает металлический блеск. Блики и блеск в
этой модели усиленно подчеркиваются.
Правильно выбирая модель закраски
для каждого типа материала, можно обеспе-
чить визуальную правдоподобность сцены.
В отличие от программ трехмерного
моделирования системы виртуальной реаль-
ности имеют ограниченные возможности за-
краски объектов. Большинство браузеров ис-
пользуют только закраску Гуро, так как сце-
ны виртуального мира необходимо генериро-
вать и отображать в реальном времени.
Различные оптические характеристики
поверхностей можно имитировать с помощью
карт текстуры. При этом для имитации та-
ких свойств материалов, как, например, диф-
фузное отражение, используются растровые
изображения (текстурные карты), полученные
методом сканирования фотографий поверхно-
стей реальных предметов либо путем матема-
тического расчета (процедурные карты). На-
пример, чтобы смоделировать дерево, нужно
заменить цвет диффузного отражения мате-
риала на текстурную карту – изображение ре-
альной фактуры распиленного древесного
ствола. После этого можно настроить значе-
ния параметров глянцевитость и сила блеска,
чтобы создать впечатление отполированной
деревянной поверхности.
Программы трехмерного моделирова-
ния обеспечивают возможность имитации це-
лого ряда свойств материалов при помощи
текстурных карт. Например, параметр рель-
ефность позволяет имитировать объемные
неровности на поверхностях объектов, а па-
раметр непрозрачность дает возможность
применять карту текстуры, чтобы указать,
какие участки поверхности объекта будут
прозрачными, а какие нет.
Кроме этого, программы трехмерного
моделирования, в отличие от систем вирту-
альной реальности, поставляются с множест-
вом различных материалов, снабженных па-
раметрами, которые можно корректировать.
Текстуры – узкое место при создании
виртуальных миров. При просмотре сцены в
браузере не воспроизводятся процедурные
текстуры, а также эффекты зеркального отра-
жения, преломления и рельефности. В то же
время в окне браузера видны эффекты блеска
и прозрачности. Использование текстур при-
водит к значительному снижению пропускной
способности сети при передаче больших гра-
фических файлов с высоким разрешением.
Для уменьшения времени загрузки мира не-
обходимо искать всевозможные пути умень-
шения файлов текстур. Поэтому следует при-
менять 16-битовые цветовые палитры или
текстуры из оттенков серого цвета. Много-
кратное использование одной текстуры со-
кращает время, необходимое для отображения
виртуального мира. В результате эксперимен-
тов с освещением и цветом нередко удается
найти приемлемые и эффективные альтерна-
тивы текстурам, что в свою очередь повышает
пропускную способность каналов связи.