Реализация преобразования четырехугольников в треугольники в 3D пространстве - PullRequest
1 голос
/ 05 мая 2020

Насколько я понимаю, OpenGL обычно преобразует четырехугольники в треугольники перед их рисованием, как упоминалось в wiki OpenGL. Также указано, что « Четыре вершины должны быть компланарными; невыполнение этого может привести к неопределенным результатам. ».

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

Как определяется, какая из двух диагоналей будет использована? (следовательно, какая пара треугольников будет использоваться)? Я также протестировал поведение в блендере, и, похоже, оно зависит от пропорций квадрата (показано на Pi c 1 и Pi c 2 ).

Из того, что я обнаружил на Inte rnet, реализация не зависит от OpenGL (источники: Создание треугольников из квадратной сетки , Quad из неплоских вершин ), но тогда я немного запутался, от чего это на самом деле зависит. Есть ли какой-то стандарт того, какой алгоритм использовать, или это все на диком западе, и все делают по-своему?

...