Моделирование
Сцена (виртуальное пространство моделирования) включает в себя несколько категорий объектов:
- Геометрия (построенная с помощью различных техник модель, например здание)
- Материалы (информация о визуальных свойствах модели, например цвет стен и отражающая/преломляющая способность окон)
- Источники света (настройки направления, мощности, спектра освещения)
- Виртуальные камеры (выбор точки и угла построения проекции)
- Силы и воздействия (настройки динамических искажений объектов, применяется в основном в анимации)
- Дополнительные эффекты (объекты, имитирующие атмосферные явления: свет в тумане, облака, пламя и пр.)
Задача трёхмерного моделирования — описать эти объекты и разместить их в сцене с помощью геометрических преобразований в соответствии с требованиями к будущему изображению.
Рендеринг
-
На этом этапе математическая (векторная) пространственная модель превращается в плоскую картинку. Если требуется создать фильм, то рендерится последовательность таких картинок, по одной для каждого кадра. Как структура данных, изображение на экране представлено матрицей точек, где каждая точка определена по крайней мере тремя числами: интенсивностью красного, синего и зелёного цвета. Таким образом рендеринг преобразует трёхмерную векторную структуру данных в плоскую матрицу пикселов. Этот шаг часто требует очень сложных вычислений, особенно если требуется создать иллюзию реальности. Самый простой вид рендеринга — это построить контуры моделей на экране компьютера с помощью проекции, как показано выше. Обычно этого недостаточно и нужно создать иллюзию материалов, из которых изготовлены объекты, а также рассчитать искажения этих объектов за счёт прозрачных сред (например, жидкости в стакане).
Существует несколько технологий рендеринга, часто комбинируемых вместе. Например:
- Z-буфер (используется в OpenGL и DirectX);
- сканлайн (scanline) — расчёт цвета каждой точки картинки построением луча из точки зрения наблюдателя через воображаемое отверстие в экране на месте этого пиксела «в сцену» до пересечения с первой поверхностью. Цвет пиксела будет таким же, как цвет этой поверхности.;
- Трассировка лучей (рейтрейсинг, англ. raytracing) — то же, что и сканлайн, но цвет пиксела уточняется за счёт построения дополнительных лучей (отражённых, преломлённых и т. д.) от точки пересечения луча взгляда;
- глобальная иллюминация (англ. global illumination, radiosity) — расчёт взаимодействия поверхностей и сред в видимом спектре излучения с помощью интегральных уравнений
и другие.
Наиболее популярными системами рендеринга можно назвать:
Самые передовые достижения и идеи трёхмерной графики (и компьютерной графики вообще) докладываются и обсуждаются на ежегодном симпозиуме SIGGRAPH, традиционно проводимом в США.
Программное обеспечение
Программные пакеты, позволяющие производить трёхмерную графику, то есть моделировать объекты виртуальной реальности и создавать на основе этих моделей изображения, очень разнообразны. Последние годы устойчивыми лидерами в этой области являются коммерческие продукты: такие как Autodesk 3ds Max, Maya, Newtek Lightwave, SoftImage XSI и сравнительно новые Rhinoceros 3D, Cinema 4D или ZBrush. Кроме того, уверенно набирают популярность и открытые продукты, распространяемые свободно, например, полнофункциональный пакет Blender (позволяет и производство моделей, и последующий рендеринг), K-3D и Wings3D (только создание моделей с возможностью последующего использования их другими программами).
Трехмерная графика активно применяется в системах автоматизации проектных работ (САПР) для создания твердотельных элементов: зданий, деталей машин, механизмов.
Связь с физическим представлением трехмерных объектов
Трёхмерная графика обычно имеет дело с виртуальным, воображаемым трёхмерным пространством, которое отображается на плоской, двухмерной поверхности дисплея или листа бумаги. В настоящее время известно несколько способов отображения трехмерной информации в объемном виде, хотя большинство из них представляет объемные характеристики весьма условно, поскольку работают со стереоизображением. Из этой области можно отметить стереоочки, виртуальные шлемы, 3D-дисплеи, способные демонстрировать трехмерное изображение. Несколько производителей продемонстрировали готовые к серийному производству трехмерные дисплеи. Но чтобы насладиться объемной картинкой, зрителю необходимо расположиться строго по центру. Шаг вправо, шаг влево, равно как и неосторожный поворот головы, карается превращением трехмерности в несимпатичное зазубренное изображение. Решение этой проблемы уже созрело в научных лабораториях. Германский Институт Фраунгофера демонстрировал 3D-дисплей, при помощи двух камер отслеживающий положение глаз зрителя и соответствующим образом подстраивающий изображение, в этом году пошел еще дальше. Теперь отслеживается положение не только глаз, но и пальца, которым можно «нажимать» трехмерные кнопки. Таким образом, становится возможным не только видеть объемную картинку, но и взаимодействовать с изображенными на ней предметами.
Однако и 3D-дисплеи по-прежнему не позволяют создавать физической, осязаемой копии математической модели, создаваемой методами трехмерной графики.
Развивающиеся с 1990-х годов технологии быстрого прототипирования ликвидируют этот пробел. Следует заметить, что в технологиях быстрого прототипирования используется представление математической модели объекта в виде твердого тела (так называемое твердотельное моделирование).