Техническая библиотека CITForum.ru CITKIT.ru - все об Open Source Форумы Курилка
Все новости / Все статьи Деловая газета - шквал(!) IT-новостей :: CITCITY.RU
Первая полоса ИТ-Инфраструктура Телекоммуникации Безопасность BI Интеграционные платформы КИС IT-бизнес Ширпотреб Точка зрения

25.09.2020

Новости:


Все новости

Ширпотреб

Такой реальный мир 3D…

Любой человек, хоть немного работающий за компьютером, так или иначе сталкивается с трехмерной графикой. Многие попросту не обращают на это внимания — наличие целого ряда красивых элементов оформления и анимированных сцен давно считается нормой практически во всех коммерческих программных пакетах, приложениях Интернета, презентациях и рекламных роликах. Это и неудивительно — ведь мы живем в мире, измеряемом тремя координатами, где нас повсюду окружают объемные объекты со свойственными им визуальными особенностями: цветом, прозрачностью, блеском и пр. Закономерно, что создатели компьютерных программ стараются как можно больше приблизить элементы интерфейса и само изображение на экране к условиям реального мира — так оно и красивее, и привычнее для восприятия.

3D — откуда?

На сегодняшний день использование трехмерной графики вышло уже далеко за пределы сферы только информационных технологий.

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

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

Но слабые возможности аппаратного обеспечения в ту пору не позволяли создавать даже совсем несложные 3D-изображения. Первые компьютерные программы, формирующие простенькие трехмерные модели на основе эскизов, были созданы в университете города Юты (США) Иваном Сазерлендом и Дэвидом Эвансом. Начиная с середины 70-х их последователи Эд Катмулл, Джим Блинн, Би Тюн Фонг (студенты все той же кафедры компьютерной графики в Юте) продолжили развивать технологии работы с 3D-графикой и анимацией.

Поначалу исследования носили сугубо научный характер, так как мало кто воспринимал всерьез студенческие и аспирантские работы по формированию объемных изображений на экране компьютера. Но, как оказалось, фундаментальные исследования, проведенные в этот период, стали началом развития мощнейшей технологии, которая коренным образом изменила представление о возможностях применения компьютерной графики. Многое из созданного в те годы находит применение до сих пор. В частности, при визуализации используются материал Blinn, созданный Дж. Блинном, а также специальная модель освещения, основанная на расчете интенсивности света в каждой точке поверхности объекта, разработанная Фонгом и известная под названием Phong shading.

1.jpg

Phong shading

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

То есть кроме собственно математического описания геометрии модели, которое бы максимально отвечало форме моделируемого и отображаемого объекта, требовалось его хорошее визуальное представление. И здесь очень кстати пришлись достижения ученых-физиков, занимающихся оптикой и различными формами излучения. Результаты их работ, касающиеся преломления, отражения, поглощения световых лучей, были положены в основу различных методов визуализации.

Стабильный рост производительности персональных компьютеров в начале 90-х дал толчок развитию относительно недорогих программ для трехмерного моделирования. Появление таких программных пакетов сделало 3D доступным для простых пользователей, при этом само моделирование перестало быть привилегией небольших групп ученых, занимающихся скучными исследованиями, или кинематографистов, имеющих доступ к мощным графическим станциям. Легкость в освоении, относительно невысокие требования к аппаратному обеспечению и поистине удивительные возможности таких систем обеспечили им быстрое распространение и большую популярность. Кроме того, развитие графических библиотек способствовало популяризации программирования 3D-приложений, что еще более ускорило развитие и распространение трехмерной графики. В области дизайна и анимации следом за такими китами 3D-моделирования, как 3D Studio Max, Maya, Softimage 3D, LightWave 3D, на рынке появляются небольшие компании (Renderman, Mental Ray и пр.), занимающиеся разработкой узконаправленных специализированных модулей — плагинов. В инженерном 3D-моделировании у тяжелых САПР-пакетов (CATIA, Unigraphics, Pro/Engineer) инициативу перехватывают более легкие и простые в освоении 3D-пакеты нового поколения: SolidWorks, SolidEdge, Inventor.

Дизайн и анимация

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

Что же скрывается за столь таинственным словом «дизайн»? Дизайн (от англ. design — проектировать, чертить, задумывать) — это вид деятельности, связанный с проектированием предметного мира. Дизайн часто еще называют художественным конструированием или технической эстетикой. Специалисты по дизайну разрабатывают образцы рационального построения предметной среды (зданий, изделий, интерьеров и пр.), изучают эстетические свойства изделий и т. п.

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

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

Создание реалистичного изображения состоит из двух этапов:

  • моделирование объектов трехмерной сцены;
  • визуализация (рендеринг).

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

Среди множества подходов к созданию трехмерных моделей объектов можно выделить несколько основных, предлагаемых сегодня в наиболее успешных программах 3D-графики:

  • создание твердых тел с помощью булевых операций — путем добавления, вычитания или пересечения материала моделей;
  • формирование сложных полигона льных поверхностей, называемых меш (от англ. mesh — сетка), путем полигонального или NURBS-моделирования;
  • применение модификаторов геометрии.

Модификатором называется действие, назначаемое объекту, в результате чего свойства объекта и его внешний вид изменяются. Модификатором может быть вытягивание, изгиб, скручивание и т. п.

2.jpg

Модель помещения

Кроме того, дизайнер может добавлять и манипулировать в сцене различными эффектами окружающей среды (туман, объемный свет), эмулировать потоки частиц, огонь, жидкости и много чего другого, что впоследствии позволит достичь большей естественности изображения. Сейчас, например, весьма активно развиваются инструментальные средства для моделирования волос и шерсти (модуль Hair and Flur в 3DS Max), а также одежды (модуль Cloth). Уже известны специализированные модули для быстрого создания различных видов растений, групп людей, элементов интерьера и пр.

3.jpg

Смоделировано с использованием модуля Hair and Flur

Завершающим этапом моделирования трехмерной сцены является расстановка камер (точек в пространстве, откуда может быть направлен взгляд наблюдателя) и источников света. Это очень ответственный шаг, так как именно от взаимного размещения камеры и «светильников» более всего зависит реалистичность изображения, полученного в результате визуализации. Хорошо владея средствами моделирования, можно достаточно быстро создать сложную трехмерную сцену, но после этого даже профессиональный дизайнер может потратить часы, добиваясь нормального освещения, оптимального положения камер и направления взгляда. Другими словами, само по себе моделирование не представляет уж очень больших трудностей: возможности программ 3D-графики поистине колоссальны и для успешного их использования, как правило, достаточно иметь представление о приемах трехмерного моделирования и хоть немного объемного и абстрактного мышления. Тогда как для превращения трехмерной сцены в красивую картинку необходимо хорошо понимать физические аспекты визуализации, разбираться в оптике, свойствах материалов, и главное — иметь навыки художника.

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

4.jpg

Модель того же помещения после визуализации

Технологии рендеринга можно разделить на две большие категории: первая из них учитывает воздействие света только от непосредственных источников (локальное освещение), а вторая — обрабатывает отражение света от вторичных источников (глобальное освещение). Самих же методов расчета интенсивности света насчитывается немало. Наиболее известный из них — трассировка лучей (ray tracing). Метод основан на отслеживании путей всех лучей в сцене от их источников до глаза наблюдателя. Картинка при этом получается намного реалистичнее, однако сам метод очень неудобен в силу большой ресурсоемкости.

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

Процесс создания анимации состоит из трех этапов:

  • моделирование объектов, участвующих в анимации;
  • задание перемещения, деформации и взаимодействия объектов сцены посредством формирования ключевых кадров;
  • создание анимационного ролика, включающее в себя последовательный рендеринг каждого отдельного кадра (с учетом изменяющегося освещения, положения и формы объектов) и соединение всех кадров.

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

Технологии 3D-анимации давно взяли на свое вооружение кинокомпании, с каждым годом все активнее и активнее используя их при создании новых фильмов. Сложно назвать какой-либо из раскрученных голливудских блокбастеров, снятых за последние лет двадцать, сцены которого при монтаже не дополнялись бы анимацией и визуальными эффектами. Лидером среди программных продуктов здесь считается Softimage 3D (фильмы «Матрица», «Парк юрского периода», «Бэтмэн», «Годзилла», «Люди в черном», «Пятый элемент» и многие другие). Но по причине большой сложности в освоении и высокой стоимости эта программа не столь популярна, как те же 3D Studio Max или Maya. Поэтому в мире 3D в последние годы значительно больше слышно о стремительно набирающей обороты 3ds Max, нежели о других программных пакетах.

5.jpg

Съемка эпизода в киностудии

6.jpg

После визуализации в 3ds Max

Инженерное моделирование

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

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

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

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

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

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

Но мы зря говорим только о разнице между дизайнерским и инженерным моделированием. У них ведь много и общих задач. Инженерная анимация — очень распространенное явление. Она позволяет показать заказчику изделие еще до его появления на свет, дает возможность имитировать процессы сборки-разборки изделия, кинематики движения механизмов. Схожих задач много. Рендеринг — тоже не редкость. Скажем, тот же отдел маркетинга предприятия частенько требует картинку изделия для каталога еще до того, как само изделие запущено в серию. Другое дело, что требования для инженерной анимации и фотореалистичных изображений все-таки, как ни крути, ниже, чем для дизайна. Поэтому приложения такие проще и дешевле. Характерный пример из этой области — компания Autodesk.

7.jpg

Лобзик, спроектированный в 3D-САПР

Для своего инженерного пакета Inventor она использует не движок собственного 3D Studio max, а стороннюю разработку. Значит, задачи совсем разного уровня. Однако, чтобы у читателя не создалось впечатление об инженерном моделировании как о чем-то второсортном, следует упомянуть о классе CAE-систем — инженерных расчетных пакетов, работающих с созданными в CADсистемах трехмерными моделями. Вот это высший пилотаж. Расчет на прочность, кинематика и динамика, проливаемость пресс-форм, аэродинамические и гидравлические расчеты, имитации краш-тестов… Сложнейшие вычислительные комплексы работают на полную катушку, чтобы обеспечить мощностями такое программное обеспечение. По своей сложности такие программные пакеты стоят на одной ступени с мощнейшими анимационными приложениями, применяемыми в кинематографии, а по значимости — возможно, даже и выше их.

Инженер-конструктор получает в свои руки поистине фантастический инструмент: трехмерное представление напряжений в изделии, объемное распределение температур, пространственное моделирование потоков газов, смесей и жидкостей. И все это просто и наглядно — никаких тебе «трехэтажных» формул, плоских графиков, диаграмм или приблизительных исчислений. Короче говоря, переворот, совершенный 3D в кинематографе и дизайне, и сравнить нельзя с тем, что дало появление CAE-систем в конструировании.

Отрадно, что в области инженерного 3D-моделирования отечественные разработки догоняют западные аналоги. Пример тому — российская система КОМПАС-3D, за пять лет выросшая из плоского чертежного редактора в мощную 3D-САПР с собственным математическим ядром. Только за последний год она обзавелась приложениями для анимации (собственная разработка), рендеринга (совместно с ПРА «Эстетика», известным разработчиком приложений для рендеринга и анимации), кинематического и динамического анализа (совместно с брянской Лабораторией вычислительной механики).

8.jpg

Инженерная визуализация в КОМПАС-3D

9.jpg

Инженерный анализ

3D — куда?

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

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



IT News

Комментарии

Константин, Thu Oct 15 09:42:51 2009:
Интересная статья. Занимаюсь инженерно-конструкторской деятельностью. На мой взгляд Компасу очень сильно не хватает фотореалистичности, хотя он действительно сильно шагнул вперед за последнее время. Столкнулся с необходимостью дизайнерской проработки конструкции для создания привлекательных эскизных проектов. Вот сижу и подбираю программу в которой наилучшее сочетание графики и инженерной составляющей.
Alex, Wed Jul 16 12:41:14 2008:
Хорошая статья.
Только конец пессимистичный.
Для больших сборок товарищи нужно использовать специальные большие графические станции.
Похоже, что в Росии хотят на писюках все делать.
alan, Wed Jul 16 09:19:27 2008:
Имея богатый опыт работы в CATIA V5 могу с казать что действительно зубы скрепят когда вращаешь многотысячную сборку. Но в будущем видимо измениться сам подход к инженерному проектированию. Это будет погружение инженера в виртуальную реальность его собственной сборки. Это увеличет скорость работы, и не будет так занудно. К стати такая работа уже ведётся на некоторых предприятиях в качестве пилотных проектов
FireBird, Fri Oct 19 17:18:21 2007:
пять баллав и зачед. сам прафессианальна занимаюсь 3д анимацией и паралельно инжинерным проектированием. Насамом деле, задачито почти схожие. Щас вот думаю как убедить дирика в том что надабы переходить на 3д проектирование, может сунуть под нос ему эту статью?
аноним, Mon Jul 23 23:10:37 2007:
www.render.ru/gallery
полно картинок
Влад, Mon Jul 23 13:01:23 2007:
Интересная статья
Аноним, Tue May 1 23:39:38 2007:
Дайте ссылки на представленные модели =) Хочеться позать =)
станли, Thu Mar 8 16:56:34 2007:
за душу взяло

Комментарии заморожены.

Последние комментарии:

Самое интересное:


© 2004–2009 Проект CITCITY.ru