Введение в компьютерную графику. 3D модели изнутри

Продолжение. Предыдущая часть.

Полигоны, ребра, точки.

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

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

Но если посмотреть на модель динозавра, то можно заметить, что полигоны четырехугольные. Во время моделирования рекомендуется использовать только четырехугольные полигоны и, в тех местах, где нет другой возможности, треугольные. N-гональные, т.е. с количеством углов больше 4 применять не рекомендуется. Называется это грамотной топологией. Потом будет меньше проблем с моделью. К примеру, если затем к полигону применить операцию разбиения, таким образом повышая детализацию, то в случае с четырехугольным полигоном результат будет предсказуем - получаем 4 меньших квадрата. Разбиение полигонов на меньшие - один из приемов в 3D моделировании называемый тесселяцией. Из низгополигональной угловатой модели можно получить более сглаженную за счет большего количества полигонов.

* Все изображения являются собственность их владельцев.