Почему треугольники всегда используются для рисования поверхностей в 3D? Почему не квадрат или какая-то другая форма?
Почему 3D-двигатели в основном используют треугольники для рисования поверхностей?
Ответ 1
Треугольники никогда не могут быть непланарными; все, что имеет более 3 баллов, может быть непланарным и, таким образом, невозвратным, если оно не преобразовано в треугольники.
Например: квадрат - это два треугольника, которые находятся на одной плоскости, если все точки, составляющие квадрат, являются копланарными. Требуется много вычислений, чтобы убедиться, что все точки являются копланарными, поэтому все многоугольники, превышающие 3 точки, предварительно вычисляются путем дезинтеграции их в треугольники и проверены, чтобы убедиться, что все точки одноплоскостны один раз, вместо этого на каждом кадре, который отображается.
Вот хорошая ссылка о сетках полигонов.
Планарная сетка
http://softimage.wiki.softimage.com/xsidocs/ca0c8514.jpg
Непланарная сетка
http://softimage.wiki.softimage.com/xsidocs/ca0c854b.jpg
и еще один пример, который может сделать его более понятным
Неплоская сетка является вырожденной и не может быть отсортирована или отображена правильно любым разумным способом. Треугольники не имеют этой проблемы.
Эффективность
Треугольники также очень эффективны с точки зрения памяти и могут быть отсортированы и очень быстро выполняются при использовании Треугольных полос, для которых требуется только 1 точка для сохранения каждый дополнительный треугольник после первого.
http://upload.wikimedia.org/wikipedia/en/0/03/Triangle_Strip.png
и Triangle Fans, который является частным случаем треугольной полосы.
http://www.codesampler.com/d3dbook/chapter_05/chapter_05_files/image008.jpg
Ответ 2
Поскольку три точки являются минимальными, необходимыми для определения плоской поверхности, любая фигура может быть смоделирована с использованием многих треугольников, и существуют эффективные алгоритмы для быстрого рисования треугольников на экране.
Ответ 3
В принципе любая сложная (поверхностная) структура может быть представлена как куча треугольников. Треугольник - самая атомная и примитивная геометрия. Следовательно, он используется как основа практически для чего угодно. Тем не менее, большинство 3D-двигателей предоставляют вам более сложные примитивы, такие как сферы, конусы, цилиндры, пончики и многое другое. Проверьте документацию ваших библиотек.