double arrow

Что представляют собой трехмерные объекты

Для нашего глаза трехмерные объекты выглядят на экране дисплея "как настоящие", а что они представляют собой с точки зрения компьютера? Что бы ни изображали собой трехмерные объекты, будь то скалистые горы, вода в реке, доисторический ящер, рыцарь в доспехах или трава на лужайке, - все это лишь пустотелые, не имеющие физической толщины оболочки. Эти оболочки становятся видимыми только благодаря тому, что программа 3ds max умеет рассчитывать, как от каждой их точки отражаются в направлении глаза наблюдателя воображаемые световые лучи, испускаемые заданными в составе сцены источниками света. Рассмотрим устройство оболочек объектов более подробно.

Оболочки: вершины, ребра, грани…

В программе 3ds max оболочки всех объектов, независимо от их формы, состоят в конечном счете из треугольных граней (faces), образующих сетку (mesh) с треугольными ячейками, как показано на рис. 1.

Рис. 1.Оболочки объектов любой формы представлены сетками с треугольными ячейками.

 

Каждая грань имеет три вершины (vertices) и три ребра (edges), соединяющих эти вершины. Смежные грани, лежащие в одной плоскости, образуют многоугольник или полигон (polygon). В программе 3ds max появился новый тип объектов, в оболочках которых минимальным редактируемым плоским фрагментом является именно полигон, а не треугольная грань. Сетку, образованную из полигонов, называют редактируемой полисеткой (editable poly). Несмотря на то что полигон как минимальную ячейку полисетки можно выделить только целиком, он все равно разбивается программой на треугольные грани, недоступные для редактирования. Ребра между гранями, не лежащими в одной плоскости, изображаются на сетке сплошными линиями, а между гранями, лежащими в одной плоскости, - пунктиром, как показано на рис. 2, демонстрирующем увеличенный фрагмент сферической оболочки. На этом рисунке изображен еще один важный элемент грани - ее нормаль (normal), то есть перпендикуляр к поверхности грани. Нормаль позволяет определить, будет данная грань видимой или нет. Видимыми считаются только те грани, нормали которых направлены в сторону наблюдателя. Если нормаль грани перпендикулярна линии взгляда или направлена от наблюдателя, то грань перестает быть видимой. Например, если бы вы заглянули внутрь объекта-сферы (а это легко сделать в 3ds max с помощью модели съемочной камеры), то были бы разочарованы, не увидев ничего. Все грани сферы видны только снаружи.

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

Рис. 2. Сетка оболочки состоит из граней, задаваемых своими вершинами, ребрами и нормалями.

 

В программе 3ds max каждая грань задается координатами своих вершин - как известно, положение любой точки в трехмерном пространстве можно задать тройкой координат: (X; Y; Z). Таким образом, даже для такого простейшего трехмерного объекта, как прямоугольный параллелепипед, программе приходится хранить координаты 8 вершин, то есть 8 троек чисел, с указанием того, какие из этих троек образуют каждую из 12 треугольных граней параллелепипеда. Сложные сцены иногда содержат в своем составе сотни тысяч граней, так что можете представить, какую работу приходится производить компьютеру при визуализации таких сцен! Зачем же нужно разбивать оболочки на грани? Это делается из соображений единообразия. Точки поверхностей тел простой формы, таких как сфера, цилиндр или конус, можно было задать и не разбивая эти поверхности на грани, но в реальной жизни объекты правильной геометрической формы встречаются редко. Пришлось бы разрабатывать и использовать разные подходы к описанию поверхностей тел простой формы и всех остальных объектов, имеющих произвольную конфигурацию.
Почему используются грани именно треугольной формы? Это просто: через три точки в трехмерном пространстве всегда можно провести плоскость, и притом только одну. На современном рынке компьютерной аппаратуры имеются графические платы, называемые аппаратными ускорителями 3D-графики и способные выполнять преобразования координат вершин треугольных граней при помощи специализированных микропроцессоров. В частности, широкой известностью пользуются видеоплаты семейства GeForce компании NVidia. Их применение позволяет добиваться очень высокой скорости отображения 3D-графики на экране дисплея.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: