Как я могу получить данные результата преобразований вершинных шейдеров обратно в ЦП? - PullRequest
0 голосов
/ 08 мая 2020

Я изучаю OpenGl и имею следующий сценарий:

  • У меня есть несколько 2D-кругов, которые случайным образом перемещаются по сетке.
  • Линии окружностей иногда пересекают линии сетки.
  • Я хотел бы сделать что-то там, где происходит пересечение геометрий, то есть в точке пересечения между линиями круга и линиями сетки.

Моя проблема следующее: я делаю расчеты преобразования для движения кругов в вершинном шейдере, как я могу получить данные результатов преобразований обратно в основную программу для вычисления нужной мне точки пересечения?

И В общем, как лучше всего работать с шейдерами? Я мог бы выполнить все преобразования на ЦП, вычислить нужные мне точки пересечения и отправить окончательные точки шейдерам, но разве это не приведет к потере возможностей графического процессора? Я понимаю, что графический процессор хорош именно для таких операций.

...