Профессионально о мебели. Информационный портал

Трехмерная графика. Трехмерная графика в современном мире Создание 3д графики

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

Разглядывая рекламный щит с изображением интерьера комнаты или рекламный ролик о мороженном, наблюдая за кадрами остросюжетного фильма, мы и не догадываемся, что за всем этим стоит кропотливая работа мастера 3d графики.

Трехмерная графика это

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

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

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

3d технологии графики и технологии 3d печати проникли во многие сферы человеческой деятельности, и приносят колоссальную прибыль.

Трехмерные изображения ежедневно бомбардируют нас на телевидении, в кино, при работе с компьютером и в 3D играх, с рекламных щитов, наглядно представляя всю силу и достижения 3д-графики.

Достижения современного 3д графики используются в следующих отраслях

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

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


Для того чтобы получить 3д-изображение объекта необходимо выполнить следующие шаги

  1. Моделирование - построение математической 3д-модели общей сцены и ее объектов.
  2. Текстурирование включает наложение текстур на созданные модели, настройка материалов и придание моделям реалистичности.
  3. Настройка освещения .
  4. (движущихся объектов).
  5. Рендеринг - процесс создания изображения объекта по предварительно созданной модели.
  6. Композитинг или компоновка - постобработка полученного изображения.

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

Наиболее распространенными программными продуктами для 3d моделирования являются: Autodesk 3D max, Pixologic Zbrush, Blender.

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


Освещение
- создание, установка направления и настройка источников освещения в созданной сцене. Графические 3д-редакторы, как правило, используют следующие виды источников света: spot light (расходящиеся лучи), omni light (всенаправленный свет), directional light (параллельные лучи) и др. Некоторые редакторы дают возможность создания источника объемного свечения (Sphere light).

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

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

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

Трёхмерная компьютерная графика, как и векторная, является объектно-ориентированной, что позволяет изменять как все элементы трёхмерной сцены, так и каждый объект в отдельности. Этот вид компьютерной графики обладает большими возможностями для поддержки технического черчения. С помощью графических редакторов трёхмерной компьютерной графики, например Autodesk 3D Studio , можно выполнять наглядные изображения деталей и изделий машиностроения, а также выполнять макетирование зданий и архитектурных объектов, изучаемых в соответствующем разделе архитектурно-строительного черчения. Наряду с этим может быть осуществлена графическая поддержка таких разделов начертательной геометрии, как перспектива, аксонометрические и ортогональные проекции, т.к. принципы построения изображений в трёхмерной компьютерной графике частично заимствованы из них.

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

К средствам работы с трёхмерной графикой,относят такой графический редактор как 3D Studio MAX . Это один из самых известных трёхмерных редакторов, он часто используется при создании фильмов. Разработка программы 3D Studio МАХ была начата в 1993 году. Версия 3D Studio МАХ 1.0 вышла в 1995 году на платформе Windows NT .

Уже тогда некоторые эксперты осторожно высказывали мнение, что МАХ может конкурировать с другими пакетами трехмерной графики. Осенью 2003 года discreet выпускает ЗD MAX 6 . Новые инструменты анимации частиц в связке с модулями позволяют создавать фотореалистичные атмосферные эффекты. Появились встроенная поддержка капельно-сетчатых объектов, полноценная сетевая визуализация, импорт данных из САD -приложений, новые возможности для моделирования. Но кроме 3D Studio MAX есть и другие, не менее популярные программы трёхмерного моделирования, например Maya . Maya - это программа-аналог 3D Studio MAX , но она предназначена, в первую очередь, для анимации и для передачи мимики на лице трёхмерного актёра. Кроме того, в Maya удобнее рисовать. 3D Studio MAX направлен в первую очередь на качественную визуализацию предметов, ещё в нём можно выполнять примитивные чертежи.


Вообще для черчения существуют свои программы трёхмерного моделирования, самые известные из них AutoCAD , ArhiCAD . AutoCAD предназначен, в первую очередь, для машиностроительного черчения, а ArhiCAD для архитектурного моделирования.

Что же требует трехмерная графика от человека?

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

Именно это условие дает возможность описать с помощью получаемых плоскостей «пространственную сетку» , которая представляет собой модель объекта. Затем объекту дополнительно присваиваются характеристики поверхности объекта – материал. В свою очередь, материал характеризует качество поверхности, например, полированная, шероховатая, блестящая и др. Описывается и его текстура (камень, ткань, стекло и др.). Задаются и оптические свойства, например, прозрачность, отражение или преломление световых лучей и т.д.
Наряду с этим, трехмерному объекту можно задать условия освещения и выбрать точку обзора (камеру) для получения наиболее интересного наглядного изображения. Постановка, состоящая из трехмерного объекта, условий освещения и выбранной точки зрения, называется «трехмерной сценой» . А вот для описания трехмерного пространства и объекта, находящегося внутри его, используется хорошо уже знакомый Вам координатный метод.

Существуют различные методы моделирования трехмерных объектов. Например, метод текстового описания модели с помощью специальных языков программирования «Скрипт» .

  • Recovery Mode

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

Часть 1. Собственно, моделирование
Традиционно рисуют в 2D (по осям X и Y) - на бумаге, холсте, дереве и т.п. При этом отображают какую-то одну из сторон предмета. Картинка сама по себе плоская. Но если мы хотим получить представление обо всех сторонах предмета, то необходимо нарисовать несколько рисунков. Так поступают в традиционной рисованной анимации. Но, вместе с тем, существует, (кстати, в СССР была довольно хорошо развита) т.н. кукольная анимация. Один раз изготовленную куклу снимают в необходимых позах и ракурсах, получая серию «плоских картинок». 3D (к X и Y добавляется координата глубины Z) визуализация - это те же «куклы», только существующие в цифровом виде. Другими словами, в специальных программах (Blender, 3ds Max, Maya, Cinema 4D и т.п.) создается объемное изображение, например авто.


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

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


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

Как правило, полигональное моделирование относится к пустотелому моделированию, где объект имеет только объем, но внутри пустой. Это означает, что если мы смоделируем куб, а потом удалим одну из стенок, то увидим внутри пустоту. Также имеются программы для твердотельного моделирования, где тот же самый куб представлен в виде монолитного объекта. В таких программах (к примеру, Autodesk Inventor) применяются математические модели отличные от тех, что в полигональном моделировании. Алгоритмы твердотельного моделирования лучше подходят для моделирования механизмов при разработке техники. Программы вроде Autodesk Inventor имеют средства для моделирования с учетом особенностей технологического процесса, как то фаски, сверление отверстий, проставление размеров, допусков и т.п. Получаемые модели можно сразу отправить на подходящий станок для получения изделия в металле или другом материале.
Также существуют так называемые программы 3D лепки (ZBrush, Autodesk Mudbox) в которых моделирование сводится (грубо говоря) к созданию углублений или выпуклостей. Такая техника похожа на то, как скульпторы лепят из глины - убирая ненужное и добавляя необходимое. С помощью таких программ можно добиться реалистичного рельефа поверхности, например морщин на коже или складок ткани. В настоящее время высокополигональные (а для лепки модель должна обладать солидным кол-вом полигонов) реалистичные модели людей и вообще животного мира выполняются, в большинстве своем, с применение программы лепки. Распространена практика когда заготовка модели создается с помощью полигонального моделирования, а затем в программе лепки тесселируется и добавляются мелкие детали.

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


В общем случае текстура - это двумерный рисунок который накладывается на 3D модель. Текстура может быть как процедурной - сгенерированной при помощи алгоритма, так и нарисованная в графическом редакторе, или фотографией реального объекта. С помощью текстуры задается рисунок и цвет модели, но реальная поверхность обладает и другими параметрами: отражающей способностью, преломлением, рельефом, позрачностью и т.п. Все эти параметры задаются в свойствах материала. Т.е. материал с точки зрения 3D графики - это некая математическая модель описывающая параметры поверхности. Например, для воды обязательно необходимо указать прозрачность и преломляющую, отражающую способности.
Перед «нанесением» материала на 3D модель необходимо создать ее развертку, т.е. представить все (несколько, одну) поверхности в виде проекции на плоскость. Это необходимо для того, чтобы затем двумерная текстура правильно «лягла» на модель.
Таким образом изготовление 3D модели в общем случае состоит из следующих стадий:
1. Получение изображений референса (т.е. того, с чего будет моделироваться) или самого референса. Или отрисовка экскиза.
2. Моделирование геометрии на основе референса.
3. Создание развертки.
4. Отрисовка текстур или получение их другим способом в виде файлов.
5. Настройка параметров материала (текстуры, преломление, отражение, прозрачность).
Теперь 3D модель готова для визуализации - получении картинки.
Первый и четвертый пункт могут быть быть опущены если модель простая, но, как правило, хороших результатов без всех 5 шагов не добиться.
Подытожим.
Между обычным рисунком, скажем, на бумаге, и построением 3D изображения есть существенные различия в самом процессе. Двумерный рисунок, как правило, создается в два этапа: эскиз и раскрашивание. В 3D графике после изготовления модели ее необходимо поместить в сцену к другим объектам (или в так называемую студию), добавить освещение, камеру и лишь затем можно надеяться получить финальную картинку. Изображение в 3Dграфике просчитывается на основе физической модели, как правило, это модель распространения луча света с учетом отражения, преломления, рассеивания и т.п. Рисуя красками мы сами отрисовываем тени, блики и т.д., а в трехмерной графике мы подготавливаем сцену с учетом освещения, материалов, геометрии, свойств камеры, программа рассчитывает итоговую картинку сама.

Вот, на сегодня пока и все. Комментарии, а особенно вопросы и замечания по существу приветствуются.

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

Трёхмерная графика не обязательно включает в себя проецирование на плоскость.....

Энциклопедичный YouTube

    1 / 5

    ✪ Теория 3D Графики, урок 01 - Введение в 3D Графику

    ✪ Компьютерная графика в кино

    ✪ Лекция 1 | Компьютерная графика | Виталий Галинский | Лекториум

    ✪ 12 - Компьютерная графика. Основные понятия компьютерной графики

    ✪ Лекция 4 | Компьютерная графика | Виталий Галинский | Лекториум

    Субтитры

Применение

Трёхмерная графика активно применяется для создания изображений на плоскости экрана или листа печатной продукции в науке и промышленности , например, в системах автоматизации проектных работ (САПР; для создания твердотельных элементов: зданий, деталей машин, механизмов), архитектурной визуализации (сюда относится и так называемая «виртуальная археология »), в современных системах медицинской визуализации .

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

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

Создание

Для получения трёхмерного изображения на плоскости требуются следующие шаги:

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

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

Наиболее популярными пакетами сугубо для моделирования являются:

  • Robert McNeel & Assoc. Rhinoceros 3D ;

Для создания трёхмерной модели человека или существа может быть использована как прообраз (в большинстве случаев) Скульптура .

Текстурирование

SketchUp

Визуализация трёхмерной графики в играх и прикладных программах

Есть ряд программных библиотек для визуализации трёхмерной графики в прикладных программах - DirectX, OpenGL и так далее.

Есть ряд подходов по представлению 3D-графики в играх - полное 3D, псевдо-3D.

Такие пакеты даже не всегда дают пользователю оперировать 3D-моделью напрямую, например, есть пакет OpenSCAD , модель в котором формируется выполнением формируемого пользователем скрипта, написанного на специализированном языке.

Трёхмерные дисплеи

Трёхмерные, или стереоскопические дисплеи , (3D displays, 3D screens) - дисплеи, посредством стереоскопического или какого-либо другого эффекта создающие иллюзию реального объёма у демонстрируемых изображений.

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

Вы, наверное, читаете эту статью на экране монитора компьютера или мобильного устройства - дисплей, который имеет реальные размеры, высоту и ширину. Но когда вы смотрите, например, мультфильм История Игрушек или играете в игру Tomb Raider, вы лицезреете трёхмерный мир. Одной из самых удивительных вещей трехмерного мира является то, что мир, который вы видите, может быть миром, в котором мы живем, миром, в котором мы будем жить завтра, или миром, который живет только в умах создателей фильма или игры. И все эти миры могут появиться только на одном экране - это как минимум интересно.
Как компьютер делает так, что обманывает наши глаза и мы думаем, что смотря на плоский экран видим глубину представленной картины? Как разработчики игр делают так, что мы видим реальных персонажей, передвигающихся в реальном ландшафте? Сегодня я расскажу вам о визуальных трюках, используемых графическими дизайнерами, и о том, как всё это разрабатывается и кажется нам настолько простым. На самом деле всё не просто, и чтобы узнать, что из себя представляет 3D-графика, ступайте под кат - там вас ждёт увлекательная история, в которую, я уверен, вы погрузитесь с небывалым удовольствием.

Что делает изображение трехмерным?

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

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

На протяжении сотен лет художники использовали некоторые визуальные трюки, которые могут сделать плоское 2D-изображение настоящим окном в реальный трехмерный мир. Вы можете увидеть подобный эффект на обычной фотографии, которые вы можете сканировать и просмотреть на мониторе компьютера: объекты на фотографии кажутся меньше, когда они дальше; объекты же, близкие к объективу камеры, находятся в фокусе, значит, соответственно, всё, что за объектами в фокусе - размыто. Цвета, как правило, менее яркие, если объект не так близок. Когда мы говорим о 3D-графике на компьютерах сегодня - мы говорим об изображениях, которые движутся.

Что такое 3D-графика?

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

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

Какая часть виртуального мира показывается на экране?
В любой момент экран показывает только крошечную часть виртуального трехмерного мира, созданного для компьютерной игры. То, что показывается на экране - определенные комбинации способов, которыми определяется мир, где вы принимаете решение куда пойти и что посмотреть. Независимо от того, куда вы идёте - вперёд или назад, вверх или вниз, влево или вправо - виртуальный трехмерный мир вокруг вас определяет то, что вы видите, находясь на определенной позиции. То, что вы видите, имеет смысл от одной сцены к другой. Если вы смотрите на объект с того же расстояния, вне зависимости от направления, он должен выглядеть высоко. Каждый объект должен выглядеть и двигаться таким образом, чтобы вы верили в то, что он имеет ту же массу, что и реальный объект, что он такой же твёрдый или мягкий, как и реальный объект, и так далее.

Программисты, которые пишут компьютерные игры, прикладывают огромные усилия к разработке виртуальных 3D-миров и делают их так, чтобы вы могли блуждать в них, не сталкиваясь ни с чем, что заставляло бы вас думать «Это не могло произойти в этом мире!». Последней вещью, которую вы хотите видеть - два твёрдых объекта, которые могут пройти прямо друг через друга. Это - резкое напоминание о том, что всё, что вы видите, является притворством. Третий шаг включает в себя ещё как минимум столько же вычислений, сколько и другие два шага и должны происходить так же в реальном времени.


Слева компьютерная графика, справа - актер мокапа

Освещение и перспектива

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

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

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

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

Глубина резкости


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


Сглаживание

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

Реальные примеры

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

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

Создание анимации и видимости «живого действия»

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

Сколько кадров в секунду?
Когда вы идете на шикарный блокбастер в местное кино, последовательность изображений, называемых кадрами работает в количестве 24 кадра в секунду. Так как наша сетчатка сохраняет изображение немного дольше, чем 1/24 секунды, глаза большинства людей будут смешивать кадры в один непрерывный образ движения и действия.

Если вы не понимаете, о чём я только что написал, то посмотрим на это с другой стороны: это означает, что каждый кадр кинофильма - фотография, сделанная на выдержке (экспозиции) 1/24 секунды. Таким образом, если вы посмотрите на один из многочисленных кадров фильма о гонках, вы увидите, что некоторые гоночные автомобили «размываются», потому что они проехали с большой скоростью в то время, пока у камеры открыт затвор. Данная размытость вещей, создающаяся за счёт быстрого движения - то, что мы привыкли видеть, и это часть того, что делает изображение реальным для нас, когда мы смотрим на него на экране.

Однако, цифровые трехмерные изображения - это ведь не фотографии как ни крути, поэтому никакого эффекта размывания не происходит, когда объект перемещается в кадре во время съёмки. Чтобы сделать изображения более реалистичными, размывание должно быть явно добавлено программистами. Некоторые дизайнеры считают, что для «преодоления» этого отсутствия естественного размытия требуется более 30 кадров в секунду, посему и подтолкнули игры выйти на новый уровень - 60 кадров в секунду. Хотя это и позволяет каждому отдельному изображению выглядеть в мельчайших подробностях и отображать движущиеся объекты в меньших приращениях, оно существенно увеличивает количество кадров для данной анимационной последовательности действий. Есть и другие определенные куски изображений, где точный рендеринг на компьютере должен быть принесен в жертву ради реализма. Это относится как к подвижным, так и неподвижным объектам, но это уже совсем другая история.

Подойдем к концу

Компьютерная графика продолжает удивлять весь мир, создавая и генерируя самые разнообразные действительно реалистично движущиеся и недвижущиеся объекты и сцены. С 80 колонок и 25 линий монохромного текста графика значительно продвинулась, и результат очевиден - миллионы людей играют в игры и проводят самые различные симуляции с сегодняшней технологией. Новые 3D-процессоры также дадут о себе знать - благодаря им мы сможем в буквальном смысле исследовать другие миры и испытывать то, чего мы никогда не осмеливались попробовать в реальной жизни. Напоследок вернемся к примеру с мячом: как создавалась эта сцена? Ответ прост: изображение имеет сгенерированный компьютером мяч. Нелегко сказать, который из двух является подлинным, не так ли? Наш мир удивителен и мы должны соответствовать ему. Надеюсь, вам было интересно и вы узнали для себя очередную порцию интересной информации.

Похожие публикации