Предлагаем Вашему вниманию статью, опубликованную в 6 номере журнала "САПР и Графика" за 1998 г. и посвященную получению реалистических изображений в bCAD на основе созданных или заимствованных из других систем трехмерных моделей.
Андрей Пронько Владимир Малюх
Получение реалистичных изображений в bCAD.
Наконец завершена работа по созданию модели будущего изделия, будь то дизайнерский проект или работа в области машиностроения. Перед автором возникает новая задача: как представить данный проект. Еще очень рано рапортовать о законченной работе, по той причине, что необходимо задать свойства созданных поверхностей, материала из, которого они изготовлены, или будут изготовлены. Желательно также задать освещение проекта, способное подчеркнуть, выигрышные стороны и скрыть возможные недостатки, задать наиболее удобные точки зрения, направление обзора и фокусное расстояния виртуальной оптической системы.
Редактор материала
Редактор материалов bCAD представляет собой пять секций - цвет, свойства поверхности, карта текстуры, рельеф и карта отражения.
рис.1 - Панель настройки оптических свойств поверхности. -
Все изменения, вносимые в установки и параметры поверхности, немедленно отображаются в окне просмотра, что существенно облегчает создание нужного материала.
Общие свойства поверхности.
В секции поверхность устанавливаются значения таких параметров как отражение, шероховатость, прозрачность, светимость, зеркальность, зернистость и преломление. Причем значения всех параметров кроме преломления устанавливаются в процентах. Следовательно, для задания тех или иных свойств Вам достаточно оценочной информации и нет необходимости в получении точных физических характеристик. Вследствие этого, открывается возможность создания полного спектра существующих свойств выбранной поверхности. Что касается такого параметра как коэффициент преломления света, то здесь создатели bCAD шагнули еще дальше. Значение преломления задается в промежутке от 0 до 4, тогда как наибольшее значение этого параметра для материала существующего в природе принадлежит алмазу и соответствует значению 1,7. Таким образом, у проектировщика в дополнении ко всему появляется возможность в своей работе использовать и несуществующие в природе материалы, либо просто усилить внешний эффект.
Окраска и текстура поверхности.
В bCAD окраска поверхности (цвет в каждой ее точке) определяется двумя составляющими - собственно цветом поверхности и текстурой, накладываемой на поверхность объекта для придания ему при тонировании вида реально существующего материала, Текстура смешивается с цветом в пропорции, определяемой движком "степени приложения" текстуры. Таким образом, можно, используя одну и ту же текстуру, скажем дерева, получить совершенно различные материалы - от свежесрубленного до старого мореного.
рис.2 - Пример "подкрашивания" текстуры основным цветом. -
В bCAD текстуры могут быть двух типов - растровые изображения, загруженные из файлов, и встроенные параметрические, представляющие собой пространственные математические функции, описывающие распределение цвета в объеме тела. Наложение таких текстур очень просто в освоении и использовании, особенно если требуется окрасить в едином стиле сложные пространственные конструкции.
рис.3 - Параметрические текстуры позволяют легко окрашивать сложные конструкции. -
Применение внешних растровых текстур несколько более трудоемко, но для проектировщика открывается возможность использования отсканированных изображений реально существующих материалов - обоев, паркета и т.п. а также более гибкого управления способом наложения и ориентацией текстуры, используя координатную сетку поверхности. Примером наложения текстуры по координатной сетке может служить рисунок, приведеный ниже. В целях наглядности сетка дополнительно выделена и в верхнем углу приведено изображение оригинальной текстуры.
рис.4 - Наложение растровой текстуры на координатную сетку поверхности. -
Карта рельефности представляет план неровностей на поверхности объекта. Так же как и текстура, карта рельефности может быть растровым изображение или параметрической функцией. Степень рельефности пропорциональна градиенту яркости используемого изображения. Использование функции задания рельефа является неотъемлемой частью описания любой поверхности. Особенно широкий спектр вариантов рельефа предстает при проектировании строительных, изоляционных и отделочных материалов, в случаях, если в проектируемых изображениях присутствуют разного рода жидкости.
рис.5 - Использование карты рельефа для имитации поверхности воды. -
Поверхность моря на этом примере плоская, но к ней приложена карта рельефа имитирующая водную рябь. Для справки в правом нижнем углу приведено каркасное изображение этого проекта.
При рассмотрении свойств поверхности мы установили такой параметр как степень отражения. Теперь наступил момент, когда нужно указать, что именно отражается от поверхности. Иными словами, показать то, что мы видим в отражении. Именно это позволяет достичь визуального эффекта зеркальности. Так же как и в предыдущих секторах, карта отражений может быть растровой и параметрической. Таким образом, появляется возможность описать окружающую среду объекта, не создавая ее непосредственно в проекте. В дополнение к этому, применение карты отражения позволяет имитировать более тесную взаимосвязь между отдельными частями проекта, что позволяет придать ему ощущение целостности и реалистичности, особенно для полированных и металлических элементов. Пример использования единой карты отражения для всех элементов приведен на рисунке ниже.
рис.6 - Использование карта отражения для имитации металлических и полированных поверхностей. -
Для справки изображение самой карты отражения приведено в левом верхнем углу.
Настройки растровых текстур и рельефов.
Кроме способа наложения растровых текстур и рельефов, рассмотренных выше, в bCAD предусмотрено создание дополнительных эффектов настройки накладываемого изображения. В частности, различного рода повороты, горизонтальные и вертикальные перевороты, смещения изображения относительно осей виртуальной карты Прозрачный фон представляет собой функцию позволяющую делать прозрачными все части текстурного изображения с нулевой интенсивностью красной, зеленой, и синей составляющих цвета. Это дает возможность вставлять в изображения, например фотографии людей и реальных объектов. В качестве растровых текстур могут быть использованы файлы следующих форматов: JPEG, Truevision Targa TGA, CompuServe GIF. Windows BMP, Animator PIC, AnimatorPro CEL. Также растровые текстуры могут быть записаны в файл для модификации или использования в других чертежах. Кроме уже перечисленных, bCAD позволяет записать файлы также в форматах PaintBrush PCX, TIFF.
Однако вернемся к нашему проекту. После проведения выше указанных действий над каждой имеющейся поверхностью (или группой поверхностей в том случае, если они обладают одинаковыми свойствами) можно считать, что процесс создания проекта подошел к завершению. Но только процесс создания. Возникает задача представить результаты своей работы заказчику. И здесь наступает очередь панели инструментов под названием "Студия".
Работа с камерами
Для начала, необходимо определить с каких точек зрения созданный проект будет выглядеть более выигрышно, какие ракурсы представляют проект более полно. В случае если выбранные Вами точки зрения совпадают со стандартными (вид спереди, слева, сверху, сзади и т.д.), которые в bCAD могу вызываться либо одним щелчком мышью, либо функциональными клавишами, то эту часть проектирования можно опустить. Однако если существует необходимость в создании оригинальных видов, то возникают предпосылки для того, чтобы воспользоваться таким инструментом как "Камера". Данная функция создает объект, позволяющий хранить и изменять предопределенное положение точки зрения, направления обзора и фокусного расстояния виртуальной оптической системы. В проекте может быть достаточно большое количество камер, поэтому необходимо именовать каждую камеру, используя неповторяющиеся названия. Эту функцию bCAD выполняет автоматически, нумеруя каждую камеру, однако возможно и введение собственного оригинального названия.
Проектировщик также может варьировать длину объектива камеры. Значение длины объектива аналогично длине объектива настоящей камеры и измеряется в миллиметрах. Длина объектива задает также и угол обзора камеры, который вычисляется при этом автоматически. В панели управления есть несколько кнопок, позволяющих задать одно из стандартных значений длины объектива:
- очень широкий угол обзора (так называемый "рыбий глаз") - 25 мм
- панорамного обзора - 35 мм
- угол обзора, соответствующий человеческому глазу - 50 мм
- малый угол обзора - 85 мм
- угол обзора, соответствующий телеобъективу настоящей камеры - 135 мм
Для того чтобы источник освещения, попавший в поле зрения камеры, или поверхность, которая отражает световой поток, выглядели наиболее реально, в данном разделе предусмотрена функция создания ореола и возможность изменения его размера и яркости. Иногда возникает необходимость заменить несколько отдельных видов на некоторую последовательность кадров или, другими словами, небольшой "мультфильм". Такая возможность также предусмотрена в пакете bCAD, и для этого необходимо лишь задать траекторию движения камеры вокруг сцены или же, наоборот, сцены вокруг камеры.
Источники освещения
И так необходимые виды и точки зрения определены и установлены. Обратимся к выбору освещения. При тонировании в bCAD существует возможность так называемого "студийного освещения", о которой мы поговорим немного позже. Однако часто возникает необходимость подсветить отдельные части проекта и затенить другие. В подтверждение наших слов хотим напомнить Вам, как изменился облик центра г. Москвы впредверии праздника 850-летия, когда была осуществлена художественная подсветка зданий. Данная функция широко представлена в пакете bCAD. В нём существуют возможности создания направленного и точечного (равномерного) источника света. Вновь созданный источник света вы можете разместить в любом месте проекта, задав точные его координаты либо "на глаз" при помощи мыши. Задав соответствующие углы освещения и ослабления для направленного источника, Вы можете плавно варьировать интенсивность освещения от максимума (в центре) до нуля на границе зоны ослабления. Кроме того источники освещения могут производить эффектные ореолы.
рис.7 - Пример ореола вокруг источника цвета. -
Тонирование
После проведения всех выше указанных мероприятий Вы можете считать свою творческую работу законченной, т.к. единственное, что Вам осталось - затонировать свой проект в соответствии с имеющимися требованиями. В этом Вам поможет все та же панель инструментов "Студия". При активизации функции тонирования перед проектировщиком открывается диалоговое окно, отражающее разнообразные возможности пакета bCAD, позволяющие осуществлять весь спектр операций, необходимых для получения тонированного изображения. Прежде всего, это различные виды тонирования. Целесообразность применения того или иного вида тонирования определяется имеющимся у проектировщика временем, стадией разработки проекта (выполняется черновой вариант тонирования и окончательный) и определенными требованиями в передачи различных световых эффектов (многократное отражение и преломление света, тени и т.д.). Плоская закраска и закраска Гуро используются лишь для предварительной оценки геометрии и не представляют большого интереса с точки зрения реалистичного тонирования, впрочем, и они могут быть использованы для демонстрации, например сложных машиностроительных конструкций, в том числе и в режиме реального времени с использованием технологии OpenGL.
рис.8 - Использование быстрой закраски Гуро для презентации сложных машиностроительных конструкций. -
Метод Фонга интерполирует цвет внутри каждой точки поверхности в соответствии с ее индивидуальной освещенностью. Полученный в результате эффект сглаживания создает более реалистичные изображения, чем при методе Гуро. Тонирование методом Фонга позволяет добиться ряда дополнительных визуальных эффектов, таких как наложение зеркальных отражений, цветного освещения и отображение теней от направленных источников света. Основным достоинством метода Фонга является его высокая производительность при вполне приемлемом качестве, в частности с использованием этого режима им получено изображение на рис 3. На ПК с процессором Pentium II 233МГц, тонирование столь сложного проекта заняло всего 20 секунд.
Наиболее же совершенным является метод Трассировки лучей, который позволяет моделировать некоторые такие визуальные эффекты, как создание очень реалистичных зеркальных отражений, рассеяние и преломления света при прохождении прозрачных объектов, такие как жидкости или стекло. Алгоритм трассировки лучей автоматически вычисляет отбрасываемые объектами тени от любого числа источников света. Однако следует заметить, что трассировка лучей, как правило, требует существенно большего времени, чем тонирование методами Гуро и Фонга. Большое значение при использовании метода трассировки лучей имеет такой параметр как глубина трассировки, который определяет максимальное число отражений луча света, учитываемых в процессе тонирования указанным методом. Увеличение этого параметра приводит к значительному замедлению тонирования и необходимо лишь при наличии в проекте большого количества прозрачных и зеркальных поверхностей. Величина этого параметра должна бать больше количества прозрачных плоскостей, сквозь которые проходит луч света. В противном случае при недостаточно большом значении этой величины, предметы находящиеся за последней прозрачно поверхностью будут невидны. Иногда значение этого параметра должно быть достаточно высоким, как в примере, приведенном на рисунке ниже, где число взаимных отражений и преломлений достигает 15.
рис.9 - Метод трассировки лучей позволяет моделировать сложное преломление света в прозрачных объектах. -
При тонировании изображения часто возникает необходимость задания фона. В простейшем случае фон имеет сплошной цвет. Однако можно использовать в качестве фона любое растровое изображение (рис 5.) или параметрическую текстуру. Используя возможности графики реального времени можно настроить фон и положение камеры так, чтобы вписать проектируемые объекты в уже существующую обстановку.
рис.10 - Вписывание компьютерной модели в изображение реальной местности. -
В правом нижнем углу приведено исходное изображение, использованное в качестве фона.
Таким образом, конструктор, архитектор или дизайнер может легко дополнить проект, выполненный в виде традиционных чертежей, схем и безликих геометрических моделей, серией реалистических изображений, полностью готовых к печати, либо компьютерным мультфильмом, который произведет нужное впечатление не только на коллег-специалистов, но и на заказчика.
|