У меня есть 3D-модель, состоящая из точечных вершин (XYZ) и в конечном итоге треугольных граней.
Используя OpenGL или проекцию камеры-матрицы-проекции, я могу проецировать 3D-модель на 2D-плоскость, то есть окно просмотра или изображение с разрешением m * n.
Вопрос в том, как определить соответствие между пикселем из плана 2D-проекции и его соответствующей вершиной (или гранью) из исходной 3D-модели.
А именно,
Каковы ближайшие вершины в 3D-модели для данного пикселя из 2D-проекции?
Это звучит как выбор в openGL или проблема трассировки лучей. Есть ли какое-нибудь простое решение?
Идея трассировки лучей заключается в нахождении первой вершины / грани, пересекаемой с лучом с точки зрения. Может кто-нибудь показать мне учебник или примеры? Я хотел бы найти алгоритм, независимый от использования OpenGL.