Вычисление положения объекта, чтобы оно соответствовало пикселям экрана

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

Я поиграл с фокусным расстоянием, положением камеры и масштабом камеры, и мне удалось получить плоскость, соответствующую пикселям экрана по размеру, однако при перемещении плоскости все уже не правильно.

Так что в основном мой текущий статус таков, что я задаю размер плоскости значениями, предполагая, что я работаю со стандартной 2D-графикой. Поэтому, если я установлю размер плоскости на 128x128, он более или менее будет рассматриваться как двумерный квадрат с таким точным размером.

Я не использую и не буду использовать орфографическое представление, я использую и буду использовать проекционное представление, потому что моему приложению нужна некоторая перспектива.

Как это можно рассчитать?

У кого-нибудь есть ссылки на ресурсы, которые я могу прочитать?

1 ответ

Вам нужно захватить матрицы преобразования, которые вы используете в вершинном шейдере, и применить их к точке / некоторым точкам, которые представляют плоскость

это приведет к набору точек от -1,-1 до 1,1 (после деления на w), которые вам нужно будет отобразить в окне просмотра

Другие вопросы по тегам