Трёхмерная графика

Схема проецирования сцены на экран компьютера
Пример трехмерной графики

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

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

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

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

МоделированиеПравить

В сцене могут участвовать следующие типы объектов:

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

Есть и концептуально более сложные типы, как, например, искажения пространства или системы частиц.

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

РендерингПравить

  Основная статья: Рендеринг

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

  • Z-буфер (используется в OpenGL и DirectX);
  • сканлайн (scanline) — расчёт цвета каждой точки картинки построением луча из точки зрения наблюдателя через воображаемое отверстие в экране на месте этого пиксела «в сцену» до пересечения с первой поверхностью. Цвет пиксела будет таким же, как цвет этой поверхности.;
  • Трассировка лучей (рейтрейсинг, англ. raytracing) — то же, что и сканлайн, но цвет пиксела уточняется за счёт построения дополнительных лучей (отражённых, преломлённых и т. д.) от точки пересечения луча взгляда;
  • глобальная иллюминация (англ. global illumination, radiosity) — расчёт взаимодействия поверхностей и сред в видимом спектре излучения с помощью интегральных уравнений

и другие.

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

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

Программное обеспечениеПравить

Программные пакеты, позволяющие производить трёхмерную графику, то есть моделировать объекты виртуальной реальности и создавать на основе этих моделей изображения, очень разнообразны. Последние годы устойчивыми лидерами в этой области являются коммерческие продукты: такие как Autodesk 3ds Max, Maya, Newtek Lightwave, SoftImage XSI и сравнительно новые Rhinoceros 3D, Cinema 4D или ZBrush. Кроме того, уверенно набирают популярность и открытые продукты, распространяемые свободно, например, полнофункциональный пакет Blender (позволяет и производство моделей, и последующий рендеринг) и Wings3D (только создание моделей с возможностью последующего использования их другими программами).

Связь с физическим представлением трехмерных объектовПравить

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

  Этот раздел статьи ещё не написан.
Согласно замыслу одного из участников «Традиции», на этом месте должен располагаться раздел, посвящённый Стереоскопическим дисплеям, другим вариантам 3D дисплеев.
Вы можете помочь проекту, написав этот раздел.

Появление 3D−дисплеев, способных демонстрировать трехмерное изображение, уже не за горами. Несколько производителей продемонстрировали готовые к серийному производству трехмерные дисплеи. Но чтобы насладиться объемной картинкой, зрителю необходимо расположиться строго по центру. Шаг вправо, шаг влево, равно как и неосторожный поворот головы, карается превращением трехмерности в несимпатичное зазубренное изображение. Решение этой проблемы уже созрело в научных лабораториях. Германский Институт Фраунгофера демонстрировал 3D−дисплей, при помощи двух камер отслеживающий положение глаз зрителя и соответствующим образом подстраивающий изображение, в этом году пошел еще дальше. Теперь отслеживается положение не только глаз, но и пальца, которым можно «нажимать» трехмерные кнопки. Таким образом, становится возможным не только видеть объемную картинку, но и взаимодействовать с изображенными на ней предметами.

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

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

Трёхмерное телевидениеПравить

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

 
Одна из первых фотографий экрана 3d телевизора
 
Экран 3d телевизора

СсылкиПравить

См. такжеПравить

ЛитератураПравить

  • Дж. Ли, Б. Уэр. Трехмерная графика и анимация. 2-е изд. — М.: «Вильямс», 2002. — 640 стр.
  • Д. Херн, М. П. Бейкер. Компьютерная графика и стандарт OpenGL. 3-е изд. — М.: «Вильямс», 2005. — 1168 стр.
  • Э. Энджел. Интерактивная компьютерная графика. Вводный курс на базе OpenGL. 2-е изд. — М.: «Вильямс», 2001. — 592 стр.
  • Г. Снук. 3D-ландшафты в реальном времени на C++ и DirectX 9. 2-е изд. — М.: «Кудиц-пресс», 2007. — 368 с. ISBN 5-9579-0090-7.
  • В. П. Иванов, А. С. Батраков. Трёхмерная компьютерная графика. Под ред. Г. М. Полищука. — М.: «Радио и связь», 1995. — 224 с. ISBN 5-256-01204-5.